gelf-rb icon indicating copy to clipboard operation
gelf-rb copied to clipboard

Feature Request: Support multiple target addresses in GELF::Notifier

Open afreiberger opened this issue 3 years ago • 0 comments

In the logstash-output-gelf project, there is a feature request to support multiple GELF destination hosts. https://github.com/logstash-plugins/logstash-output-gelf/issues/4

The GELF::Notifier initiator and the create_sender methods in this module would need to support passing multiple hosts and/or ports in order to properly address multiple destination GELF units when instantiating the transport layer.

The backend TCP, UDP, and TCP-TLS transport layers incorporate socket and failover management if provided with multiple addresses, however the GELF::Notifier module does not expose this functionality to consumers of this library.

The Notifier instantiation begins here and ends with a call to create_sender with a single host and port. https://github.com/graylog-labs/gelf-rb/blob/master/lib/gelf/notifier.rb#L25

The create_sender definition is here: https://github.com/graylog-labs/gelf-rb/blob/master/lib/gelf/notifier.rb#L137

This line of create_sender packs the single host and port into the proper array of host, port tuples, and requires further expansion to support multiple backend servers. https://github.com/graylog-labs/gelf-rb/blob/master/lib/gelf/notifier.rb#L138

afreiberger avatar Jan 26 '22 18:01 afreiberger