我正在使用 rspec 测试我的 logstash 配置以匹配基本的 tomcat 日志,但是当我在 grok 模式中指定字段时它会失败(没有字段,它会成功!)。
config <<-CONFIG
filter {
grok {
patterns_dir -> "./patterns"
pattern => "%{CATALINA_DATESTAMP:logTimestamp} %{JAVACLASS} %{WORD}"
}
}
CONFIG
sample 'Jul 15, 2015 9:33:23 AM org.apache.catalina.core.ApplicationContext log'
//编辑:将 TOMCAT_DATESTAMP 更正为 CATALINA_DATESTAMP,即:
CATALINA_DATESTAMP %{MONTH} %{MONTHDAY}, 20%{YEAR} %{HOUR}:?%{MINUTE}(?::?%{SECOND}) (?:AM|PM)
当 ":logTimestamp" 部分在模式中时,什么都不匹配。当它被删除时,它与这条线相匹配......关于为什么的任何想法?这是用户错误,安装错误还是其他?