当logstash处理我的apache事件时,我收到了illegal_argument_exception错误。这是错误:
{" type" =>" illegal_argument_exception"," reason" =>"格式无效:\" 15 / Feb / 2016:14:56:59 -0500 \"在" / Feb / 2016:14:56:59 -0500 \""}}}},:level =>:warn}
这是我的apache过滤器:
filter {
if [fields][type] == "apache" {
grok {
patterns_dir => ["/etc/logstash/custom_patterns.txt"]
match => ["message", "%{COMMONAPACHELOG}" ]
}
date {
locale => "en"
match => [ "timestamp", "dd/MMM/yyyy:HH:mm:ss Z" ]
}
}
}
来自我的apache日志的样本日期格式是15 / Feb / 2016:14:53:54 -0500
答案 0 :(得分:0)
我正在使用
match => [ "timestamp", "dd/MMM/YYYY:HH:mm:ss Z" ]
并且工作正常,您可以尝试检查JODA page。另外,请检查您的区域设置,您可能需要使用locale => "en"
或类似内容来更改您的区域设置以与您的格式匹配
但是我怀疑问题不在时间戳中,你删除了一个重要的部分......在错误中,你有"reason"=>"failed to parse [fieldname]"
其中fieldname是给出问题的那个...而且它可能不是时间戳