2015-03-13 4 views

ответ

3

Вы можете упомянуть отметку времени, которую вы указали в Logstash, с шаблоном TIMESTAMP_ISO8601.

filter { 
    grok { 
     match => ["message", "%{TIMESTAMP_ISO8601:timestamp_match}"] 
    } 
} 

Вы можете проверить это на Grok Debugger, введя 2015-03-13 00:23:37.616 и %{TIMESTAMP_ISO8601:timestamp_match}

Вы, вероятно, хотите, чтобы соответствовать в другое имя поля, но это основная идея.

Встроенные узоры можно найти в Logstash documentation или на GitHub.

+0

Почему Grok Debugger дает мне всю эту дополнительную информацию? ' "ГОД": [ [ "2015" ] ], "MONTHNUM": [ [ "03" ] ], "MONTHDAY": [ [ "13" ] ] , "ЧАС": [ [ "00", нуль ] ], "МИНУТЫ": [ [ "00", нуль ] ], "SECOND": [ [ "38.582" ] ], ' – pcproff

+0

Я реализовал это в своем файле фильтра, и я не получил дополнительных атрибутов, что важно. Спасибо, опрометчик. – pcproff

+1

@pcproff Если вы выберете «Только имена», это должно исчезнуть (это поведение по умолчанию в grok, но не в отладчике). Этими другими совпадениями являются подшаблоны, составляющие 'TIMESTAMP_ISO8601'. Иногда удобно видеть их, когда вы исследуете, но в остальном они могут быть шумными. – rutter