Я новичок в шаблонах grok, и я пытаюсь написать шаблон grok для ниже настраиваемой строки журнала. Я хочу извлечь значения полей, заданных в строке журнала, например. ServiceName
, SystemDate
, SequenceName
и т.п., вместе с TID,[0] [timestamp]
как. Любая помощь будет большой оценкой.Grok pattern для пользовательской строки журнала
Log:
TID: [0] [ESB] [2016-08-16 10:35:10,828] [jms-Worker-2] INFO {org.apache.synapse.mediators.builtin.LogMediator} - ServiceName = CustomerService_v1,SystemDate = 8/16/16 10:35 AM,ServerIP = 10.200.42.158,ServerHost = slllasp102.local,SequenceName = SendCustomerToTopic,Message = Going to Send Message to Customer Topic,MessageCode = null,ErrorMessage = null,ErrorDetail = null,ErrorException = null {org.apache.synapse.mediators.builtin.LogMediator}
MyPattern:
\[%{TIMESTAMP_ISO8601:timestamp}\]\s+%{WORD:loglevel}\s+-\s+%{GREEDYDATA:ServiceName}
Я не могу написать правильный шаблон, восстановить поля один за другим.
Пожалуйста, обновите ваш вопрос, чтобы показать, что у вас есть уже пытался. Спасибо. –
Мы не здесь, чтобы выполнять свою работу, вам нужно показать проблему, чтобы решить эту проблему. cf http://stackoverflow.com/help/how-to-ask – baudsp
Чтобы помочь вам: http://grokconstructor.appspot.com/do/match, чтобы проверить ваш шаблон grok, https://github.com/logstash- plugins/logstash-patterns-core/tree/master/patterns/для шаблонов, с базовым в [grok-pattern] (https://github.com/logstash-plugins/logstash-patterns-core/blob/master/шаблоны/Grok-узоры). Также было бы лучше использовать фильтр kv для извлечения полей (вам придется сначала извлечь эту часть журнала с помощью grok) – baudsp