Негодяй регулярное выражение с условием

Я выполнил запрос, используя который я хочу отфильтровать журнал, который имеет время больше 100 или любое число.

2015-09-04 14:31:55.015 INFO : [org.perf4j.TimingLogger:426] - start[1441402314909] time[103] tag[getDetails]
2015-09-04 14:31:56.437 INFO : [org.perf4j.TimingLogger:426] - start[1441402316435] time[12] tag[getDetails]
2015-09-04 14:31:57.654 INFO : [org.perf4j.TimingLogger:426] - start[1441402317653] time[20] tag[getDetails]
2015-09-04 14:31:58.721 INFO : [org.perf4j.TimingLogger:426] - start[1441402318720] time[10] tag[getDetails]

Вот мой отморозок. Это может отфильтровать выходы выше 4 строк из моего журнала, но я не могу поставить условие дальше (больше чем). Пробовал eval, но не смог получить ожидаемый результат.

sourcetype="abc" *|regex _raw=time\[(\d+)\]

1 ответ

Если значение, которое вы хотите отфильтровать, больше или равно 100, проверьте 3 цифры:

sourcetype="abc" *|regex _raw=time\[(\d{3})\]

Таким образом, будут совпадать только значения 100 или выше.

РЕДАКТИРОВАТЬ: Если вы ищете число выше диапазона (например, 60):

sourcetype="abc" *|regex _raw=time\[([6-9]\d|\d{3,})\]

Для конкретного номера и выше (например, 33+):

sourcetype="abc" *|regex _raw=time\[(33|[3-9][3-9]|[4-9]\d+|[1-9][0-9]\d+)\]

Чтобы запретить числа с ведущими нулями:

sourcetype="abc" *|regex _raw=time\[(33|[3-9][3-9]|[4-9]\d+|[1-9][0-9]\d+|[1-9]\d{2,})\]
Другие вопросы по тегам