2016-09-20 6 views
-1

Я пытаюсь выяснить шаблон grok для файла журнала ниже. Он содержит 1 строку журнала успеха и 1 запись журнала предупреждений.Как написать grok для этого файла журнала

2016-09-03T12:53:31-04:00 DEV SampleFileService INFO 512132:414618:SampleFileService-2-FTS EXECUTING: Error Handling Client Request started 

2016-09-03T12:53:31-04:00 DEV SampleFileService WARNING 512133:414618:SampleFileService-2-FTS ERROR: Error while sending ErrorHandler request to IEHS Queue: test.queue.publish 
Retry count 1 of 3, 
Error: 
<ns0:ErrorReport xmlns:ns0="http://www.tibco.com/pe/EngineTypes"> 
    <StackTrace>Job-414618 Error in [Process-Path!!] 
There was an unexpected error while sending a message. 
    at com.tibco.plugin.share.jms.impl.JMSSender.send(Unknown Source) 
    at com.tibco.plugin.share.jms.impl.JMSSender.send(Unknown Source) 
    at com.tibco.plugin.jms.JMSAbstractTransmitActivity.eval(Unknown Source) 
    at com.tibco.pe.plugin.Activity.eval(Unknown Source) 
    at com.tibco.pe.core.TaskImpl.eval(Unknown Source) 
    at com.tibco.pe.core.Job.a(Unknown Source) 
    at com.tibco.pe.core.Job.k(Unknown Source) 
    at com.tibco.pe.core.JobDispatcher$JobCourier.a(Unknown Source) 
    at com.tibco.pe.core.JobDispatcher$JobCourier.run(Unknown Source) 
caused by: com.tibco.plugin.share.jms.impl.JMSExceptionWrapper: javax.jms.JMSException: Failure storing message 
    at com.tibco.plugin.share.jms.impl.JMSPluginException.&lt;init&gt;(Unknown Source) 
    at com.tibco.plugin.share.jms.impl.JMSSender.send(Unknown Source) 
    at com.tibco.plugin.share.jms.impl.JMSSender.send(Unknown Source) 
    at com.tibco.plugin.jms.JMSAbstractTransmitActivity.eval(Unknown Source) 
    at com.tibco.pe.plugin.Activity.eval(Unknown Source) 
    at com.tibco.pe.core.TaskImpl.eval(Unknown Source) 
    at com.tibco.pe.core.Job.a(Unknown Source) 
    at com.tibco.pe.core.Job.k(Unknown Source) 
    at com.tibco.pe.core.JobDispatcher$JobCourier.a(Unknown Source) 
    at com.tibco.pe.core.JobDispatcher$JobCourier.run(Unknown Source) 
Caused by: javax.jms.JMSException: Failure storing message 
    at com.tibco.tibjms.Tibjmsx.buildException(Tibjmsx.java:612) 
    at com.tibco.tibjms.TibjmsxSessionImp._publish(TibjmsxSessionImp.java:1544) 
    at com.tibco.tibjms.TibjmsMessageProducer._publish(TibjmsMessageProducer.java:246) 
    at com.tibco.tibjms.TibjmsQueueSender.send(TibjmsQueueSender.java:74) 
    ... 9 more 
</StackTrace> 
    <Msg>There was an unexpected error while sending a message.</Msg> 
    <FullClass>com.tibco.plugin.share.jms.impl.JMSPluginException</FullClass> 
    <Class>JMSPluginException</Class> 
    <ProcessStack>Stack-Path!!</ProcessStack> 
    <MsgCode>BW-JMS-100039</MsgCode> 
</ns0:ErrorReport> 
+0

Не могли бы вы указать, что вы хотите извлечь из журнала? Потому что, если нет информации для извлечения, фильтр grok бесполезен. – baudsp

+0

Также, чтобы помочь вам: [grok filter tester] (http://grokconstructor.appspot.com/do/match#result), [документация фильтра grok] (https://www.elastic.co/guide/en/logstash /current/plugins-filters-grok.html) и [grok patterns] (https://github.com/logstash-plugins/logstash-patterns-core/blob/master/patterns/grok-patterns). – baudsp

+0

Учитывая первую строку, это должно быть timestamp -> 2016-09-03T12: 53: 31-04: 00, Env -> Dev, Application -> SampleFileService, Level -> Info, Тема -> 512132: 414618: SampleFileService-2-FTS, Статус -> EXECUTING, Сообщение -> (Напоминание о сообщении) У 2-й строки есть дополнительная информация для регистрации в поле «Сообщение» .. –

ответ

2

Вы должны использовать многострочный filter/codec на вашем входе так все ваши сообщения группируется вместе. Конфигурация является такой же как в случае:

multiline { 
    pattern => "%{TIMESTAMP_ISO8601}" 
    negate => "true" 
    what => "previous" 
} 

Это будет сгруппировать линии не начиная с ISO 8601 с даты предыдущего. Поэтому в случае вашего второго сообщения вся строка будет вместе.

Затем вы можете использовать этот шаблон: ГРОК

grok { 
    match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}%{SPACE}%{WORD:env}%{SPACE}%{WORD:application}%{SPACE}%{WORD:level}%{SPACE}%{NOTSPACE:thread}%{SPACE}%{WORD:status}:%{SPACE}%{GREEDYDATA:message}" } 
} 
+0

Я попытался использовать несколько комбинаций, как новичка, синтаксис шаблонов немного запутан. В журналах, которые я пытался проанализировать, были некоторые разделители вкладок (это оказалось «пространством» после вставки здесь ... неважно :)). Также я не мог объединить строку типа 512132: 414618: SampleFileService-2-FTS 'в одно слово. Он тоже раскололся. Хотя я упомянул https://github.com/hpcugent/logstash-patterns/blob/master/files/grok-patterns, я не знаю, где подать заявку в приведенном выше сообщении журнала. Однако оцените свою помощь, угол u - дурак ... скажет спаситель. Большое спасибо .. –

+0

Добро пожаловать. Это сработало? Если это не дает/не дает ожидаемого результата, не стесняйтесь добавлять информацию на свой вопрос – baudsp

 Смежные вопросы

  • Нет связанных вопросов^_^