Logstash 日志存储日期筛选器不处理月份
我们的对象,已解析和所有:Logstash 日志存储日期筛选器不处理月份,logstash,Logstash,我们的对象,已解析和所有: { "message" => "[2014-12-15 14:28:03,786] WARN org.apache.sshd.serve "@version" => "1", "@timestamp" => "2014-01-15T14:28:03.786Z", "type" => "errorlog", "host" => "localhos
{
"message" => "[2014-12-15 14:28:03,786] WARN org.apache.sshd.serve
"@version" => "1",
"@timestamp" => "2014-01-15T14:28:03.786Z",
"type" => "errorlog",
"host" => "localhost",
"path" => "/var/lib/gerrit/log/error_log",
"tags" => [
[0] "multiline"
],
"gerrit_timestamp" => "2014-12-15 14:28:03,786",
"loglevel" => "WARN",
"object" => "org.apache.sshd.server.session.ServerSession"
}
如您所见,我们正在将日期提取到gerrit\u timestamp
中。然后我们有一个日期过滤器来读取gerrit_timestamp
,并将其填充到@timestamp
date {
type => "errorlog"
match => [ "gerrit_timestamp", "YYYY-MM-DD HH:mm:ss,SSS" ]
target => "@timestamp"
}
那么为什么@timestamp会被禁用11个月呢?根据经验,需要使用正确的日期布局来调用日期函数,否则什么也不会出现,我不确定为什么您的日期会被禁用11个月。在您的示例中,我建议您尝试以下方法:
date {
type => "errorlog"
match => [ "gerrit_timestamp", "yyyy-MM-dd HH:mm:ss,SSS" ]
}
本例中的目标是冗余的,因为默认行为是将值设置为@timestamp。因为y是年,而y是纪年,不完全相同,D是一年中的某一天,即1-365之间,而不是月份的某一天,即D