How to understand an error-line at docker log outout


#1

I have an error like

logstash_1   | [2018-05-31T07:47:02,627][ERROR][logstash.pipeline        ] Error registering plugin {:pipeline_id=>"main", :plugin=>"#<LogStash::OutputDelegator:0x7192eb8c @namespaced_metric=#<LogStash::Instrument::NamespacedMetric:0x16868c70 @metric=#<LogStash::Instrument::Metric:0x20eea852 @collector=#<LogStash::Instrument::Collector:0x1cf4839f @agent=nil, @metric_store=#<LogStash::Instrument::MetricStore:0x4762462d @store=#<Concurrent::Map:0x00000000000fb4 entries=3 default_proc=nil>, @structured_lookup_mutex=#<Mutex:0x76e806ad>, @fast_lookup=#<Concurrent::Map:0x00000000000fb8 entries=81 default_proc=nil>>>>, @namespace_name=[:stats, :pipelines, :main, :plugins, :outputs, :\"gelf-datasync-all\"]>, @metric=#<LogStash::Instrument::NamespacedMetric:0x77807382 @metric=#<LogStash::Instrument::Metric:0x20eea852 @collector=#<LogStash::Instrument::Collector:0x1cf4839f @agent=nil, @metric_store=#<LogStash::Instrument::MetricStore:0x4762462d @store=#<Concurrent::Map:0x00000000000fb4 entries=3 default_proc=nil>, @structured_lookup_mutex=#<Mutex:0x76e806ad>, @fast_lookup=#<Concurrent::Map:0x00000000000fb8 entries=81 default_proc=nil>>>>, @namespace_name=[:stats, :pipelines, :main, :plugins, :outputs]>, @out_counter=org.jruby.proxy.org.logstash.instrument.metrics.counter.LongCounter$Proxy2 -  name: out value:0, @strategy=#<LogStash::OutputDelegatorStrategies::Legacy:0x33efd32c @worker_count=1, @workers=[<LogStash::Outputs::Gelf id=>\"gelf-datasync-all\", host=>\"https://10.0.3.198\", port=>5555, protocol=>\"TCP\", enable_metric=>true, codec=><LogStash::Codecs::Plain id=>\"plain_bee72b9c-58d4-436f-a0ac-c3a2fdc9ffef\", enable_metric=>true, charset=>\"UTF-8\">, workers=>1, chunksize=>1420, sender=>\"%{host}\", level=>[\"%{severity}\", \"INFO\"], ship_metadata=>true, ship_tags=>true, ignore_metadata=>[\"@timestamp\", \"@version\", \"severity\", \"host\", \"source_host\", \"source_path\", \"short_message\"], full_message=>\"%{message}\", short_message=>\"short_message\">], @worker_queue=#<SizedQueue:0x79b79150>>, @in_counter=org.jruby.proxy.org.logstash.instrument.metrics.counter.LongCounter$Proxy2 -  name: in value:0, @id=\"gelf-datasync-all\", @time_metric=org.jruby.proxy.org.logstash.instrument.metrics.counter.LongCounter$Proxy2 -  name: duration_in_millis value:0, @metric_events=#<LogStash::Instrument::NamespacedMetric:0x290ce583 @metric=#<LogStash::Instrument::Metric:0x20eea852 @collector=#<LogStash::Instrument::Collector:0x1cf4839f @agent=nil, @metric_store=#<LogStash::Instrument::MetricStore:0x4762462d @store=#<Concurrent::Map:0x00000000000fb4 entries=3 default_proc=nil>, @structured_lookup_mutex=#<Mutex:0x76e806ad>, @fast_lookup=#<Concurrent::Map:0x00000000000fb8 entries=81 default_proc=nil>>>>, @namespace_name=[:stats, :pipelines, :main, :plugins, :outputs, :\"gelf-datasync-all\", :events]>, @output_class=LogStash::Outputs::Gelf>", :error=>"initialize: name or service not known", :thread=>"#<Thread:0x1662310e run>"}
  1. How is the trace formated?
  2. What is the concrete error message?

(Guy Boertje) #2

It is a bit cryptic, so I'll pluck out the important bits (reformatted).

Error registering plugin

<LogStash::Outputs::Gelf
  id=>"gelf-datasync-all",
  host=>"https://10.0.3.198",
  port=>5555,
  protocol=>"TCP",
  enable_metric=>true,
  codec=><LogStash::Codecs::Plain id=>"plain_bee72b9c-58d4-436f-a0ac-c3a2fdc9ffef", enable_metric=>true, charset=>"UTF-8">,
  workers=>1,
  chunksize=>1420,
  sender=>"%{host}",
  level=>["%{severity}", "INFO"],
  ship_metadata=>true,
  ship_tags=>true,
  ignore_metadata=>["@timestamp", "@version", "severity", "host", "source_host", "source_path", "short_message"],
  full_message=>"%{message}",
  short_message=>"short_message"
>

@output_class=LogStash::Outputs::Gelf>

:error=>"initialize: name or service not known"

Possible resolution
The "error" - "initialize: name or service not known" comes from deep inside the Gelf Ruby library when the TCP socket can't be initialized.
As you are using GELF and TCP, I doubt that you are using the https protocol.
The docs say:

host

  • This is a required setting.
  • Value type is string
  • There is no default value for this setting.

Graylog2 server IP address or hostname.

Use host=>"10.0.3.198" in your LS config.


(system) #3

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.