Skip to content

[BUG] Cannot install template for OpenSearch 2.x #145

@shdubsh

Description

@shdubsh

Describe the bug
Logstash is unable to install a template against OpenSearch 2.0.0 due to a missing template file.

To Reproduce

  1. Install opensearch 2.0.0 and logstash-oss 7.16.3 and logstash-output-opensearch plugin 1.2.0
  2. Configure an input and a minimal opensearch output excluding template settings
  3. Start OpenSearch then Logstash
  4. Observe logstash logs:
[2022-06-02T21:49:18,561][ERROR][logstash.outputs.opensearch][main] Failed to install template {
  :message=>"Failed to load default template for OpenSearch v2 with ECS disabled; caused by: #<ArgumentError: Template file '/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-opensearch-1.2.0-java/lib/logstash/outputs/opensearch/templates/ecs-disabled/2x.json' could not be found>", 
  :exception=>RuntimeError, 
  :backtrace=>[
      "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-opensearch-1.2.0-java/lib/logstash/outputs/opensearch/template_manager.rb:33:in `load_default_template'",
      "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-opensearch-1.2.0-java/lib/logstash/outputs/opensearch/template_manager.rb:21:in `install_template'",
      "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-opensearch-1.2.0-java/lib/logstash/outputs/opensearch.rb:412:in `install_template'",
      "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-opensearch-1.2.0-java/lib/logstash/outputs/opensearch.rb:247:in `finish_register'",
      "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-opensearch-1.2.0-java/lib/logstash/outputs/opensearch.rb:224:in `block in register'",
      "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-opensearch-1.2.0-java/lib/logstash/plugin_mixins/opensearch/common.rb:83:in `block in after_successful_connection'"
    ]
  }

Expected behavior
Logstash should install a template and start successfully

Plugins
logstash-output-opensearch

Screenshots
N/A

Host/Environment (please complete the following information):

  • OS: Debian Buster

Additional Context
The user can configure the 1.x template (template => "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-opensearch-1.2.0-java/lib/logstash/outputs/opensearch/templates/ecs-disabled/1x.json") and Logstash will install it and start processing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions