Logstash 如何为此日志文件编写grok

Logstash 如何为此日志文件编写grok,logstash,logstash-grok,logstash-configuration,Logstash,Logstash Grok,Logstash Configuration,我正试图为下面的日志文件找出一个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

我正试图为下面的日志文件找出一个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>
2016-09-03T12:53:31-04:00开发人员SampleFileService信息512132:414618:SampleFileService-2-FTS正在执行:已启动错误处理客户端请求
2016-09-03T12:53:31-04:00开发人员SampleFileService警告512133:414618:SampleFileService-2-FTS错误:向IEHS队列发送ErrorHandler请求时出错:test.Queue.publish
重试计数1,共3次,
错误:
作业-414618[进程路径!!]中出现错误
发送邮件时出现意外错误。
位于com.tibco.plugin.share.jms.impl.JMSSender.send(未知源)
位于com.tibco.plugin.share.jms.impl.JMSSender.send(未知源)
位于com.tibco.plugin.jms.jmsabstractTransmitivity.eval(未知源)
位于com.tibco.pe.plugin.Activity.eval(未知来源)
位于com.tibco.pe.core.TaskImpl.eval(未知来源)
在com.tibco.pe.core.Job.a(未知来源)
在com.tibco.pe.core.Job.k(未知来源)
在com.tibco.pe.core.JobDispatcher$JobCourier.a(未知来源)
在com.tibco.pe.core.JobDispatcher$JobCourier.run(未知源)
原因:com.tibco.plugin.share.jms.impl.jmsceptionwrapper:javax.jms.jmsception:存储消息失败
位于com.tibco.plugin.share.jms.impl.JMSPluginException.init(未知源)
位于com.tibco.plugin.share.jms.impl.JMSSender.send(未知源)
位于com.tibco.plugin.share.jms.impl.JMSSender.send(未知源)
位于com.tibco.plugin.jms.jmsabstractTransmitivity.eval(未知源)
位于com.tibco.pe.plugin.Activity.eval(未知来源)
位于com.tibco.pe.core.TaskImpl.eval(未知来源)
在com.tibco.pe.core.Job.a(未知来源)
在com.tibco.pe.core.Job.k(未知来源)
在com.tibco.pe.core.JobDispatcher$JobCourier.a(未知来源)
在com.tibco.pe.core.JobDispatcher$JobCourier.run(未知源)
原因:javax.jms.JMSException:存储消息失败
位于com.tibco.tibjms.Tibjmsx.buildException(Tibjmsx.java:612)
在com.tibco.tibjms.tibjmsxssessionimp._publish(tibjmsxssessionimp.java:1544)
在com.tibco.tibjms.TibjmsMessageProducer._publish(TibjmsMessageProducer.java:246)
位于com.tibco.tibjms.tibjmsqueessender.send(tibjmsqueessender.java:74)
... 9更多
发送邮件时出现意外错误。
com.tibco.plugin.share.jms.impl.JMSPluginException
JMSPluginException
堆栈路径!!
BW-JMS-100039

您必须在输入中使用多行/以便将所有消息分组在一起。两种情况下的配置相同:

multiline {
  pattern => "%{TIMESTAMP_ISO8601}"
  negate => "true" 
  what => "previous"
}
这将把不以ISO 8601日期开始的行与前一行分组。因此,在您的第二条消息的情况下,所有行都将在一起

然后,您可以使用此grok模式:

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

你能指出你想从日志中提取什么吗?因为如果没有可检索的信息,grok筛选器将毫无用处。另外,为了帮助您:,和。考虑到第一行,它应该是timestamp->2016-09-03T12:53:31-04:00,Env->Dev,Application->SampleFileService,Level->Info,Thread->512132:414618:SampleFileService-2-FTS,Status->EXECUTING,Message->(提醒消息)第2行有更多信息需要记录在“消息”字段中…我尝试了一些组合,作为一个新手,模式语法有点混乱..我试图分析的日志有一些选项卡分隔(粘贴到这里后它变成了一个“空格”…没关系:))。此外,我无法将“512132:414618:SampleFileService-2-FTS”这样的字符串组合成一个单词。它也在分裂。虽然我提到了我不知道在上面的日志信息中申请到哪里…但是感谢你的帮助,在任何角度你都是傻瓜。。。我会说救世主。非常感谢……不客气。它起作用了吗?如果没有/没有给出预期的结果,请毫不犹豫地为您的问题添加信息