Application Insights Analytics中单独的apdex阈值

时间:2018-05-18 14:27:08

标签: azure-application-insights ms-app-analytics apdex

使用Application Insights的默认Apdex工作簿,我试图通过查询名称分隔apdex阈值,因为不同的查询具有不同的满意请求持续时间。 我添加了两个参数,每个参数用于特定的查询名称。 我通过apdexThresholdByName列扩展了分析查询,该列对于每个查询名称都不同。 然后我改变了这一行:扩展UserExperience = case(AverageDuration< = apdexThresholdByName,'Satisfied',AverageDuration< = 4 * apdexThreshhold,'Tolerating','Frustrated')把我的apdexThresholdByName列名称替换为静态单个参数,之前。

这不起作用。

语法错误:“无法解析实体'apdexThresholdByName'”

let apdexData = {Type}
| where timestamp {TimeRange}
| where name in ({Operations}) or '*' in ({Operations})
{OperationsFilter}
| extend success = columnifexists('success', true)
| extend Failure = iff('{Calculations}' == 'ConsiderFailures' and success == false, 1, 0)
| extend InterestingDimension = iff(isempty({SegmentBy})== true, 'Unknown', {SegmentBy})
| extend apdexThresholdByName = iff('POST Insurance/PostModel [actionName/elementid/widgetname/workspace]' == ["name"], {Insurance_PostModel_actionName_elementid_widgetname_workspace_threshold}, iff('POST Insurance/PostModel [actionName/elementid/widgetname/workspace]' == ["name"], {Insurance_PostModel_widgetname_workspace_threshold}, 0))
| where InterestingDimension in ({SegmentFilters}) or '*' in ({SegmentFilters})
| summarize AverageDuration = avg(duration), Failures = sum(Failure) by user_Id, InterestingDimension
| extend UserExperience = case(AverageDuration <= apdexThresholdByName, 'Satisfied', AverageDuration <= 4 * apdexThreshhold, 'Tolerating', 'Frustrated')
| extend UserExperience = case(Failures > 0, "Frustrated", UserExperience)
| summarize Satisfied = countif(UserExperience == 'Satisfied'), Tolerating = countif(UserExperience == 'Tolerating'), Frustrated = countif(UserExperience == 'Frustrated'), Total = count() by InterestingDimension
| project InterestingDimension, ["Satisfied Users"] = Satisfied, ["Tolerating Users"] = Tolerating, ["Frustrated Users"] = Frustrated, ["Apdex Score"] = round((Satisfied + (Tolerating / 2.0)) / Total, 2), Total
| extend Relevance = iff(["Apdex Score"] == 0, pow(Total, 1.6), Total / ["Apdex Score"])
| project-rename Users = Total
| order by {ShowSegmentsBy}
| project-away Users, Relevance;
apdexData
| extend ["Apdex Interpretation"] = case(["Apdex Score"] <= 0.5, '⛔ Unacceptable', ["Apdex Score"] <= 0.7, '⚠️ Poor', ["Apdex Score"] <= 0.85, '⚠️ Fair', ["Apdex Score"] <= 0.94, '✔️ Good', '✔️ Excellent')
| project Values = InterestingDimension, ["Apdex Score"], ["Apdex Interpretation"], ["Satisfied Users"], ["Tolerating Users"], ["Frustrated Users"]

1 个答案:

答案 0 :(得分:1)

字段apdexThresholdByName不传递其后面的摘要子句。

此摘要子句在by部分中既不包含“name”或“apdexThresholdByName”:

/system/priv-app/TelephonyProvider/TelephonyProvider.apk

以便分段不会向前传播