Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
日志存储中的Ruby代码失败,带有_rubyexception_Ruby_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Logstash - Fatal编程技术网 elasticsearch,logstash,Ruby,elasticsearch,Logstash" /> elasticsearch,logstash,Ruby,elasticsearch,Logstash" />

日志存储中的Ruby代码失败,带有_rubyexception

日志存储中的Ruby代码失败,带有_rubyexception,ruby,elasticsearch,logstash,Ruby,elasticsearch,Logstash,我想获得ruby filter中代码的帮助 logstash版本是5.0.0 alpha4 我正在ruby filter中测试代码,如下所示,但我得到了rubyexception ruby { code => " event['newfield'] = 'test' " } ruby筛选器是在筛选器{}中定义的。 logstash.log显示如下: :timestamp=>"2016-08-03T15:26:47.291000+0900", :m

我想获得ruby filter中代码的帮助

logstash版本是5.0.0 alpha4

我正在ruby filter中测试代码,如下所示,但我得到了rubyexception

  ruby {
    code => "
      event['newfield'] = 'test'
    "
  }
ruby筛选器是在筛选器{}中定义的。 logstash.log显示如下:

:timestamp=>"2016-08-03T15:26:47.291000+0900", :message=>"Ruby exception occurred: undefined method[]=' for 2016-08-03T06:26:46.829Z test %{message}:LogStash::Event", :level=>:error}
我找不到ruby filter无法使用事件对象的原因。 如果我能得到一些帮助来解决这个问题,我将不胜感激

谢谢,
Yu

Logstash 5.0.0中有一个新的事件API,现在您需要在事件上设置字段,如下所示:

  ruby {
    code => "
      event.set('newfield', 'test')
    "
  }

对于“从字段名获取值”:

ruby {
 code => "
 value = (event.get('field_name'))
    "
}

工作得很有魅力!非常感谢。太棒了,很高兴它有帮助!