Попытка вычислить среднее количество записей в результатах моего запроса - PullRequest
0 голосов
/ 31 октября 2019

Я пытаюсь создать запрос в 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), но тогда, конечно, я больше не могу видеть отдельные разговоры,Есть ли способ увидеть оба в одной таблице?

1 Ответ

1 голос
/ 01 ноября 2019

Вы можете написать 2 запроса, один для «дает мне таблицу идентификаторов разговоров с количеством сообщений для каждого разговора», а другой - для «среднего количества сообщений за беседу». И рассмотрите возможность использования Let оператора для вашего запроса.

Сложность в том, что в обоих запросах после оператора summarize добавьте эту строку кода в конце,как | extend myidentifier="aaa".

Затем вы можете объединить 2 запроса, используя myidentifier.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...