【发布时间】:2016-02-16 09:59:10
【问题描述】:
我正在使用 Logstash 来解析日志文件。示例日志行如下所示。
2011/08/10 09:51:34.450457,1.048908,tcp,213.200.244.217,47908,->,147.32.84.59,6881,S_RA,0,0,4,244,124,flow=Background-Established-cmpgw-CVUT
我在我的配置文件中使用了以下过滤器。
grok {
match => ["message","%{DATESTAMP:timestamp},%{BASE16FLOAT:value},%{WORD:protocol},%{IP:ip},%{NUMBER:port},%{GREEDYDATA:direction},%{IP:ip2},%{NUMBER:port2},%{WORD:status},%{NUMBER:port3},%{NUMBER:port4},%{NUMBER:port5},%{NUMBER:port6},%{NUMBER:port7},%{WORD:flow}" ]
}
它适用于无错误的日志行。但是当我有如下一行时,它失败了。请注意,缺少第二个字段。
2011/08/10 09:51:34.450457,,tcp,213.200.244.217,47908,->,147.32.84.59,6881,S_RA,0,0,4,244,124,flow=Background-Established-cmpgw-CVUT
如果缺少值,我想在我的输出 Json 对象中放一个默认值。我该怎么做?
【问题讨论】:
标签: logstash logstash-grok logstash-configuration