2017-01-29 131 views
0

我最近升级从旧版本的麋鹿堆簇到5.1,虽然一切看起来都很好,我在logstash日志经常出现的一个例外,它看起来像这样:logstash 5红宝石滤波

logstash.filters.ruby Ruby exception occurred: Direct event field references (i.e. event['field']) have been disabled in favor of using event get and set methods (e.g. event.get('field')). Please consult the Logstash 5.0 breaking changes documentation for more details. 

我有过滤器看起来是这样的:

filter { 
    ruby { 
     init => "require 'time'" 
     code => "event.cancel if event['@timestamp'] < Time.now-(4*86400)" 
    } 
} 

有什么建议?

回答

0

的异常包含了答案:

直接事件字段引用(即事件[“场”])赞成使用事件得到已被禁止,并设置方法(如event.get(“场” ))。

由此看来,event.get('@ timestamp')现在比事件['@ timestamp']更受欢迎。

+0

谢谢。这很明显。干杯! – cparfon