Azure Log Analytics объединяет похожие данные при подсчете - PullRequest
0 голосов
/ 20 сентября 2018

Я пытаюсь получить данные о типах браузеров, которые используют наши клиенты.Мне нужна круговая диаграмма, отображающая процент пользователей Chrome , процент пользователей Firefox / Mozilla , процент пользователей Safari и процент Edge / IE пользователей.

Используя следующий запрос, я могу перечислить все уникальные типы браузеров: Chrome57, Chrome59 и т. Д. *

customEvents
| where timestamp >= ago(7d)
| summarize Count=count(customDimensions.Type) by Browser=tostring(customDimensions.Type)
| project Browser,Count

Как объединить браузеры с одинаковыми именами, но разными версиями?Например, добавьте все браузеры Chrome в один гигантский итог.

1 Ответ

0 голосов
/ 21 сентября 2018

Самый простой способ - зарегистрировать customDimension.Type без версии браузера на этапе сбора данных.Если это не вариант, вторым по простоте будет использование оператора reduce , чтобы избежать строковых операций регулярного выражения для извлечения только имени браузера.

Если используется после проецирования customDimensions.Type, тогда он будет автоматическисопоставьте строку соответствия (имена браузеров) и предоставит для них счетчики, а также пример строки браузера, соответствующей шаблону.

Синтаксис

T | reduce [kind = ReduceKind] by Expr [with [threshold = Threshold] [, characters = Characters] ]

Аргументы

Expr: An expression that evaluates to a string value.
Threshold: A real literal in the range (0..1). Default is 0.1. For large inputs, threshold should be small.
Characters: A string literal containing a list of characters to add to the list of characters that don't break a term. (For example, if you want aaa=bbbb and aaa:bbb to each be a whole term, rather than break on = and :, use ":=" as the string literal.)
ReduceKind: Specifies the reduce flavor. The only valid value for the time being is source.

Возвращает

Этот оператор возвращает таблицу с тремя столбцами (Шаблон, Количество и Представитель) и столько строк, сколько имеется групп.Pattern - это значение шаблона для группы, где * используется в качестве подстановочного знака (представляющего произвольные строки вставки), Count подсчитывает, сколько строк во входных данных для оператора представлено этим шаблоном, а Представитель является одним значением из входного значения, которое падаетв эту группу.

PS

Кроме того, вы можете сделать снимок регулярное выражение имени (например, извлечь все перед любым числом и использовать его в качестве имени браузера).

...