logstash-plugins / logstash-filter-translate

Translate filter for Logstash
Apache License 2.0
21 stars 47 forks source link

Documentation not current on field and destination params #90

Open cafuego opened 3 years ago

cafuego commented 3 years ago

Logstash information:

  1. Logstash version: 7.14.0
  2. Logstash installation source: docker
  3. How is Logstash being run: docker
  4. How was the Logstash Plugin installed: docker

OS version:

Linux caribou 4.14.241-184.433.amzn2.aarch64 #1 SMP Wed Aug 4 14:35:25 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux

Description of the problem including expected versus actual behavior:

The current version of logstash outputs a deprecation warning about the field and destination settings for the plugin, but the docs do not list these as deprecated and do not list an example with source and target.

The config file snippet that causes the warnings:

filter {
   # If we have an airport code, do a lookup!
    if [iata] {
      translate {
        field           => "[iata]"
        destination     => "[iata_location]"
        dictionary_path => "/usr/share/logstash/config/data/iata.yaml"
        fallback        => "Middle of Nowhere"
      }
    }
}

For the record, the iata.yaml file is a simple airport code to location mapping:

AAA: Anaa Airport, PF
AAB: Arrabury Airport, AU
AAC: El Arish, EG
...

I assume I can simply swap out field for source and destination for target but it would be nice if the docs made that obvious, and not a guess :-)

Provide logs (if relevant):

[WARN ][logstash.filters.translate] You are using a deprecated config setting "destination" set in translate. Deprecated settings will continue to work, but are scheduled for removal from logstash in the future. Use `target` option instead. If you have any questions about this, please visit the #logstash channel on freenode irc. {:name=>"destination", :plugin=><LogStash::Filters::Translate destination=>"[iata_location]", dictionary_path=>"/usr/share/logstash/config/data/iata.yaml", id=>"da911bf3bff33286edb94cc6dfaba84b1d4b726de883a709779cabf7db20edcf", field=>"[iata]", fallback=>"Middle of Nowhere", enable_metric=>true, periodic_flush=>false, refresh_interval=>300, exact=>true, regex=>false, refresh_behaviour=>"merge">}
[WARN ][logstash.filters.translate] You are using a deprecated config setting "field" set in translate. Deprecated settings will continue to work, but are scheduled for removal from logstash in the future. Use `source` option instead. If you have any questions about this, please visit the #logstash channel on freenode irc. {:name=>"field", :plugin=><LogStash::Filters::Translate destination=>"[iata_location]", dictionary_path=>"/usr/share/logstash/config/data/iata.yaml", id=>"da911bf3bff33286edb94cc6dfaba84b1d4b726de883a709779cabf7db20edcf", field=>"[iata]", fallback=>"Middle of Nowhere", enable_metric=>true, periodic_flush=>false, refresh_interval=>300, exact=>true, regex=>false, refresh_behaviour=>"merge">}