When we fail to bind to the port, we should propagate the failure to prevent the pipeline from starting.
With this ruby-socket-based plugin, the pattern should be:
- bind both TCP and UDP ports in
#register, without invoking TCPServer#accept or UDPSocket#recvfrom
- invoke both
TCPServer#accept and UDPSocket#recvfrom in #run to process events
Relates: elastic/logstash#18711
When we fail to bind to the port, we should propagate the failure to prevent the pipeline from starting.
With this ruby-socket-based plugin, the pattern should be:
#register, without invokingTCPServer#acceptorUDPSocket#recvfromTCPServer#acceptandUDPSocket#recvfromin#runto process eventsRelates: elastic/logstash#18711