I read official tutorial, searched google and this forum, but still failed to get my local aaa.rb filter work correctly. Please help to see whether I missed something.
In logstash 2.3.4 (/opt/logstash),
- put my aaa.rb filter in /opt/logstash
- use this aaa filter in test.conf
- issue the command: ./bin/logstash --pluginpath /opt/logstash/ -f test.conf --configtest --debug
Error shows:
Plugin not defined in namespace, checking for plugin file {:type=>"filter", :name=>"aaa", :path=>"logstash/filters/aaa", :level=>:debug, :file=>"logstash/plugin.rb", :line=>"76", :method=>"lookup"}
The given configuration is invalid. Reason: Couldn't find any filter plugin named 'aaa'. Are you sure this is correct? Trying to load the aaa filter plugin resulted in this error: no such file to load -- logstash/filters/aaa {:level=>:fatal, :file=>"logstash/agent.rb", :line=>"189", :method=>"execute"}
it seems my logstash didn't find the filter from /opt/logstash, instead, it searches from the default directory.
This error can be avoid by moving aaa.rb into /opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-2.3.4-java/lib/logstash/filters, but I don't think it is a formal way.
Does anyone have some clue?