logstash grok解析错误日期格式
问题描述:
我对logstash很新,所以这可能是一个简单的错误,但我无法找到我的错误在哪里。我已经安装了logstash,我试图解析一些自定义java程序生成的日志。我在寻找一个非常具体线路:logstash grok解析错误日期格式
ERROR ProcessStatus 05/24/2017 12:13:58 RETC:0 : Request.evaluate:PDP Response decision: Permit
ERROR ProcessStatus 05/24/2017 12:13:58 RETC:0 : Request.evaluate:PDP Response decision: NotApplicable
我已经定义了以下配置文件:
input {
file {
type => "log"
path => [ "/var/log/tomcat7/catalina.out" ]
}
}
filter {
grok {
match => [ "message" , "%{WORD:text1} %{WORD:text2} \[%{DATA:date}\] %{WORD:text3}:%{NUMBER:num1} : %{WORD:text4}.%{WORD:text5}:%{WORD:text6} %{WORD:text7} %{WORD:text8} %{WORD:decision}"]
remove_field => [ "message" ]
}
date {
match => [ "timestamp", "MM/dd/YYYY HH:mm:ss" ]
remove_field => [ "timestamp" ]
}
}
output {
stdout {
codec => rubydebug
}
}
当线路在日志文件中收到我得到一个解析错误:
{
"path" => "/var/log/tomcat7/catalina.out",
"@timestamp" => 2017-05-24T14:31:18.494Z,
"@version" => "1",
"host" => "acio-web01",
"message" => "ERROR ProcessStatus 05/24/2017 16:31:17 RETC:0 : Request.evaluate:PDP Response decision: Indeterminate",
"type" => "log",
"tags" => [
[0] "_grokparsefailure"
]
}
我怀疑解析错误有什么可以看到的日期格式,但我还没有找到一个正确的方式来定义它。任何想法我做错了什么?
答
您的grok模式与您的数据不符。在它显示的消息中,日期周围没有[],但您的模式假定有。
您可以将您的日志行和模式粘贴到https://grokdebug.herokuapp.com/并与其一起玩,直到它匹配。