Я пытаюсь создать запрос в Application Insights, который может показать мне абсолютное и среднее количество сообщений в разговорах за определенный период времени. Я использую пример трассировки LUIS, чтобы получить контекст + информацию LUIS, откуда я и извлекаю идентификатор разговора. Я могу получить таблицу, показывающую количество сообщений на разговор, но я также хотел бы иметь среднее количество сообщений для набора данных. Подойдет как статическое среднее, так и скользящее среднее (по метке времени). Я могу получить это значение, выполнив второе обобщающее утверждение, но затем теряю степень детализации первого. Вот мой запрос.
requests
| where url endswith "messages"
| where timestamp > ago(30d)
| project timestamp, url, id
| parse kind = regex url with *"(?i)http://"botName".azurewebsites.net/api/messages"
| join kind= inner (
traces | extend id = operation_ParentId
) on id
| where message == "LUIS"
| extend convID = tostring(customDimensions.LUIS_botContext_conversation_id)
| order by timestamp desc nulls last
| project timestamp, botName, convID
| summarize messages=count() by conversation=convID
Это дает мне таблицу идентификаторов разговоров с количеством сообщений для каждого разговора. Я также хотел бы видеть среднее количество сообщений на разговор. Например, если у меня есть 4 разговора с общим количеством сообщений 100, я хочу видеть, что среднее значение равно 25. Я могу получить этот результат, выполнив второе обобщающее утверждение | summarize messages=sum(messages), avgMessages=avg(messages)
, но тогда, конечно, я больше не могу видеть отдельные разговоры,Есть ли способ увидеть оба в одной таблице?