我正在为来自Synology框的syslog消息编写一个logstash grok过滤器。一个示例消息如下所示:
Jun 3 09:39:29 diskstation Connection user:tUser [user] logged in from [192.168.1.121] via [DSM].
我很难过滤出格式奇怪的时间戳。有人能帮我一下吗?这是我目前掌握的信息。
if [type] == "syslog" and [message] =~ "diskstation" {
grok {
match => [ "message", "%{HOSTNAME:hostname} %{WORD:program} %{GREEDYDATA:syslog_message}" ]
}
}
可以看出,我还没有处理时间戳。
下面的配置可以帮助您解析日志。
grok {
match => [ "message", "%{SYSLOGTIMESTAMP:date} %{HOSTNAME:hostname} %{WORD:program} %{GREEDYDATA:syslog_message}" ]
}
您可以在这里尝试您的日志和模式,并参考这里提供的所有模式。