如何从Analytics(分析)Application Insights获取Qna Maker“ Q”?

时间:2018-08-06 16:37:49

标签: azure azure-application-insights qnamaker telemetry ms-app-analytics

我已经使用Qna Maker创建了聊天机器人的知识库,并且试图通过Analytics(分析)Application Insights可视化一些统计信息。

我想做什么

我想创建一个包含最常见Qna Maker问题的图表。

我的问题

我无法在Google Analytics(分析)的customDimensions跟踪中找到Qna Maker问题,但只能找到其ID:

enter image description here

我的问题

他们是否可以直接从Analytics(分析)Application Insights工具中获取与该ID相关联的Qna制造商问题?

谢谢。

PS:由于Stackoverflow规则,我必须在标题中使用“ Q”而不是“ Question”。

3 个答案:

答案 0 :(得分:1)

不直接。

您在appinsights中拥有的唯一信息就是随数据一起提交的信息。因此,如果他们没有发送问题(奇怪的是他们发送了答案但没有发送问题?),那么您很不走运。

作为一种解决方法,您可以在应用程序见解实例中创建一个自定义表: https://docs.microsoft.com/en-us/azure/application-insights/app-insights-analytics-import 并用ID和问题填充该表。

然后,您可以将这两件事结合到分析工具或工作簿中的分析查询中。

答案 1 :(得分:0)

如果您要查找带有通过ID链接的问题和答案的查询,则答案如下:

requests
| where url endswith "generateAnswer"
| project timestamp, id, name, resultCode, duration
| parse name with *"/knowledgebases/"KbId"/generateAnswer"
| join kind= inner (
traces | extend id = operation_ParentId
) on id
| extend question = tostring(customDimensions['Question'])
| extend answer = tostring(customDimensions['Answer'])
| project KbId, timestamp, resultCode, duration, question, answer

这不一定能解决您的问题,但可能对寻求简单问题/答案报告以改善其QnA制造商的其他人有所帮助。

可以在官方文档中找到示例: https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/how-to/get-analytics-knowledge-base

答案 2 :(得分:0)

这是我提出的一个查询,它将提取知识数据库问题的ID,用户键入的问题以及知识数据库的答案。如果它们来自同一会话,还将多个问题联系在一起。

尽管如此,我还无法找到一种方法来获取与ID相关联的知识库数据库。

requests
| where url endswith 'generateAnswer'
| project id, url, sessionId = extract('^[a-z0-9]{7}', 0, itemId)
| parse kind = regex url with *'(?i)knowledgebases/'knowlegeBaseId'/generateAnswer'
| join kind= inner
(
    traces
    | extend id = operation_ParentId
    | where message == 'QnAMaker GenerateAnswer'
    | extend userQuestion = tostring(customDimensions['Question'])
    | extend knowlegeBaseQuestionId = tostring(customDimensions['Id'])
    | extend knowlegeBaseAnswer = tostring(customDimensions['Answer'])
    | extend score = tostring(customDimensions['Score'])
)
on id
| where timestamp >= ago(10d)
| project knowlegeBaseId, timestamp, userQuestion, knowlegeBaseQuestionId, knowlegeBaseAnswer, score, sessionId
| order by timestamp asc