我的日志文件的日期模式是
10 Sep 2014 07:16:33
我在grok图案中添加了一个自定义图案
DATE_DMMY %{MONTHDAY} %{MONTH}/%{YEAR}
DATE %{DATE_US}|%{DATE_EU}|%{DATE_YMD}|%{DATE_DMMY}
DATESTAMP %{DATE} %{TIME}
在我的logstash.conf中,我使用它如下
filter {
grok {
patterns_dir => "/root/mypatterns"
match => ["message", "%{DATESTAMP:LOG_DATE}"]
}
date {
match => ["LOG_DATE", "dd MMM yyyy HH:mm:ss"]
}
}
但当我执行时,我得到了
[0] "_grokparsefailure"
请告诉我这里出了什么问题。感谢
您使用的是DATESTAMP,它以DATE开头。
DATE是其中之一:
- DATE_US,即2015年11月23日或2015年11日至23日(与您的输入不匹配)
- DATE_EU,即2015年11月23日或2015年12月23日(与您的输入不匹配)
- DATE_YMD,我认为它在任何地方都没有定义
- DATE_DMMY,即"2015年11月23日"(与您的输入不匹配)
制作一个与您的输入相匹配的模式!此外,你很少需要一个像这样扩展两个4个其他模式的模式。想象一下,当您将regexp应用于通过的每个文档时,它会是什么样子。