uken / fluent-plugin-elasticsearch

Apache License 2.0
890 stars 310 forks source link

LoadError cannot load such file -- elasticsearch/transport/transport/connections/selector #979

Open megatr0n28 opened 2 years ago

megatr0n28 commented 2 years ago

(check apply)

Problem

fluent-plugin-elasticsearch plugin stop working getting the following:

C:/ruby27/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require': cannot load such file -- elasticsearch/transport/transport/connections/selector (LoadError)
        from C:/ruby27/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluent-plugin-elasticsearch-5.1.4/lib/fluent/plugin/elasticsearch_fallback_selector.rb:1:in `<top (required)>'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluent-plugin-elasticsearch-5.1.4/lib/fluent/plugin/out_elasticsearch.rb:32:in `require_relative'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluent-plugin-elasticsearch-5.1.4/lib/fluent/plugin/out_elasticsearch.rb:32:in `<top (required)>'
        from C:/ruby27/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
        from C:/ruby27/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/registry.rb:87:in `search'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/registry.rb:44:in `lookup'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/plugin.rb:169:in `new_impl'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/plugin.rb:114:in `new_output'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/agent.rb:130:in `add_match'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/agent.rb:74:in `block in configure'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/agent.rb:64:in `each'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/agent.rb:64:in `configure'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/root_agent.rb:149:in `configure'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/engine.rb:105:in `configure'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/engine.rb:80:in `run_configure'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/supervisor.rb:668:in `run_supervisor'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/lib/fluent/command/fluentd.rb:356:in `<top (required)>'
        from C:/ruby27/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
        from C:/ruby27/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
        from C:/ruby27/lib/ruby/gems/2.7.0/gems/fluentd-1.14.6-x64-mingw32/bin/fluentd:15:in `<top (required)>'
        from C:/ruby27/bin/fluentd:23:in `load'
        from C:/ruby27/bin/fluentd:23:in `<main>'

Steps to replicate

containers:

fluentd.conf: |

  | <label @FLUENT_LOG>   | <match fluent.>   | @type stdout   |   |   | #Target Logs (ex:nginx)   |   | @type tail   | @id in_tail_container_logs   | path /var/log/containers/.log   | pos_file /var/log/containers/fluentd-containers.log.pos   | tag kubernetes.   | read_from_head false   | format json   | time_format %Y-%m-%dT%H:%M:%S.%N%Z   |   |   | @type windows_eventlog   | @id windows_eventlog   | channels application,system   | tag kubernetes.winevt.   |   | persistent false   |   |   | <match winevt.*>   | @type elasticsearch   | @id out_es_winevt   | @log_level error   | include_tag_key true   | host "#{ENV['FLUENT_ELASTICSEARCH_HOST']}"   | port "#{ENV['FLUENT_ELASTICSEARCH_PORT']}"   | scheme "#{ENV['FLUENT_ELASTICSEARCH_SCHEME'] || 'http'}"   | ssl_verify "#{ENV['FLUENT_ELASTICSEARCH_SSL_VERIFY'] || 'false'}"   | reload_connections "#{ENV['FLUENT_ELASTICSEARCH_RELOAD_CONNECTIONS'] || 'true'}"   | logstash_prefix "#{ENV['FLUENT_ELASTICSEARCH_LOGSTASH_PREFIX'] || 'k8logs-win'}"   | logstash_format true   | type_name fluentd   | request_timeout 20s   | reload_on_failure true   | reconnect_on_error true   | with_transporter_log true   | suppress_type_name true   |   | flush_thread_count "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_FLUSH_THREAD_COUNT'] || '1'}"   | flush_interval "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_FLUSH_INTERVAL'] || '10s'}"   | chunk_limit_size "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_CHUNK_LIMIT_SIZE'] || '2M'}"   | queue_limit_length "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_QUEUE_LIMIT_LENGTH'] || '32'}"   | retry_max_interval "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_RETRY_MAX_INTERVAL'] || '30'}"   | retry_forever true   |   |   | <match kubernetes.**>   | @type elasticsearch   | @id out_es   | @log_level error   | include_tag_key true   | host "#{ENV['FLUENT_ELASTICSEARCH_HOST']}"   | port "#{ENV['FLUENT_ELASTICSEARCH_PORT']}"   | scheme "#{ENV['FLUENT_ELASTICSEARCH_SCHEME'] || 'http'}"   | ssl_verify "#{ENV['FLUENT_ELASTICSEARCH_SSL_VERIFY'] || 'false'}"   | #user "#{ENV['FLUENT_ELASTICSEARCH_USER']}"   | #password "#{ENV['FLUENT_ELASTICSEARCH_PASSWORD']}"   | reload_connections "#{ENV['FLUENT_ELASTICSEARCH_RELOAD_CONNECTIONS'] || 'true'}"   | logstash_prefix "#{ENV['FLUENT_ELASTICSEARCH_LOGSTASH_PREFIX'] || 'k8logs-win'}"   | logstash_format true   | type_name fluentd   | request_timeout 20s   | reload_on_failure true   | reconnect_on_error true   | with_transporter_log true   | suppress_type_name true   |   | flush_thread_count "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_FLUSH_THREAD_COUNT'] || '1'}"   | flush_interval "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_FLUSH_INTERVAL'] || '10s'}"   | chunk_limit_size "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_CHUNK_LIMIT_SIZE'] || '2M'}"   | queue_limit_length "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_QUEUE_LIMIT_LENGTH'] || '32'}"   | retry_max_interval "#{ENV['FLUENT_ELASTICSEARCH_BUFFER_RETRY_MAX_INTERVAL'] || '30'}"   | retry_forever true   |   |

Expected Behavior or What you need to ask

The plugin runs as expected.

Using Fluentd and ES plugin versions