#sumologic
#сумологический
Вопрос:
_sourceCategory=myService | json field=_raw "log.Log" as log_message | json field=_raw "log.Barcode" as log_Barcode | json field=_raw "log.MachineId" as machine_id | where log_message contains "successfully sorted" | count by machine_id
Этот запрос даст мне количество успешных попыток для каждого идентификатора машины.
Что я хочу, так это получить все сообщения за последние 24 часа и получить средний показатель успеха в час.
так что вместо того, чтобы иметь
Идентификатор машины | Показатель Успешности Подсчета | время |
---|---|---|
123445 | 2400 | 24 ЧАСА |
Я получаю что-то вроде
Идентификатор машины | Количество успешных попыток в час | время |
---|---|---|
123445 | 100 | 24 ЧАСА |
Ответ №1:
Вам нужно будет пометить успехи по сравнению с неудачами, прежде чем применять временной интервал с помощью if
оператора. Затем примените временной интервал и агрегируйте поля и рассчитайте соотношение. Что-то вроде:
_sourceCategory=myService | json field=_raw "log.Log" as log_message | json field=_raw "log.Barcode" as log_Barcode | json field=_raw "log.MachineId" as machine_id | if (log_message matches "*successfully sorted*", 1, 0) as success | timeslice 1h | count as total_records, sum(success) as successes by _timeslice | successes / total_records * 100 as success_rate_pct
Комментарии:
1. Этот запрос даст мне процент успеха в процентах на общее количество сообщений. Что мне нужно, так это средний показатель успеха в час. Таким образом, если вы преуспели 80 раз за 8 часов, показатель успеха в час составит 10