Шаблоны Grok для отметки времени

Есть ли шаблон Grok для извлечения метки времени и даты из этой строки.

21: 11: 51: 569 / UTC (05.11.2015)

?

Я могу использовать шаблоны Grok DATE_US и TIME отдельно. Но не вместе (т.е.)

Приведенные ниже шаблоны работают.

%{TIME:time} -- 21:11:51:569/UTC
%{DATE_US:date} -- (11/5/2015)

Однако полная строка 21:11:51:569/UTC(11/5/2015) не оценивается с помощью %{TIME:time}|%{DATE_US:date}


person Bharath    schedule 09.11.2015    source источник


Ответы (1)


Я думаю, вы задали около 6 вопросов; посмотрим, получу ли я их все ...

  1. Не существует встроенного шаблона, который соответствовал бы вашему формату даты и времени.
  2. % {TIME} будет соответствовать вашему "21: 11: 51: 569" (хотя я не могу представить, чтобы было "51: 569" вместо "секунд").
  3. % {TIME} не соответствует информации о вашем часовом поясе.
  4. % {DATE_US} будет соответствовать вашему "05.11.2015".
  5. Использование «foo | bar» в регулярном выражении должно соответствовать «foo» OR «bar». Ваш шаблон "% {TIME} |% {DATE}" совпадает со временем, а затем останавливается.
  6. Подобный шаблон будет соответствовать обеим частям:% {TIME} / UTC \ (% {DATE_US} \)
  7. Можно использовать шаблон% {TZ} для соответствия часовому поясу.

Итак, со всем этим попробуйте:

%{TIME:time}/%{TZ:tz}\(%{DATE_US:date}\)
person Alain Collins    schedule 09.11.2015
comment
Большое спасибо. Это мне помогло. - person Bharath; 10.11.2015