SumoLogic: Могу ли я иметь график разницы мин / макс? - PullRequest
0 голосов
/ 22 декабря 2018

Я хочу показать график минимального значения, максимального значения и разницы между максимальным и минимальным для каждого временного интервала.Это работает нормально для мин и макс

| parse "FromPosition *)" as FromPosition
| timeslice 2h  
|  max(FromPosition) ,min(FromPosition)  group by _timeslice 

, но я не смог найти правильный способ указать разницу.например,

| (max(FromPosition)- min(FromPosition))  as diffFromPosition  by _timeslice

возвращает ошибку - Обнаружен неожиданный токен 'b'.

Я пробовал несколько разных комбинаций, чтобы объявить их в разных строках, как предложено для https://help.sumologic.com/05Search/Search-Query-Language/aaGroup., например

| int(FromPosition) as intFromPosition
| max(intFromPosition) as  maxFromPosition , min(intFromPosition) as minFromPosition 
| (maxFromPosition - minFromPosition) as diffFromPosition
| diffFromPosition by _timeslice

без успеха.

Кто-нибудь может предложить правильный синтаксис?

1 Ответ

0 голосов
/ 04 января 2019

Попробуйте это:

| parse "FromPosition *)" as FromPosition
| timeslice 2h  
| max(FromPosition), min(FromPosition) by _timeslice 
| _max - _min as diffFromPosition
| fields _timeslice, diffFromPosition

group by для функций min и max, чтобы знать, с каким диапазоном работать, а не для группировки по общему поисковому запросу.Вот почему вы получаете синтаксические ошибки, и одна из причин, по которой я предпочитаю просто использовать by, как указано выше.

Для таких запросов я обычно предпочитаю блочный график, где вы просто делаете:

| min(FromPosition), pct(FromPosition, 25), pct(FromPosition, 50), pct(FromPosition, 75), max(FromPosition) by _timeslice

Затем выбираем блок графика в качестве типа графика.Отлично смотрится на приборной панели и предоставляет много подробной информации об отклонениях и тому подобное.

...