sensu / sensu-transport

The Sensu transport abstraction library.
MIT License
14 stars 19 forks source link

Rescue EventMachine::ConnectionError not working #35

Closed syepes closed 7 years ago

syepes commented 8 years ago

I have just noticed that this rescue seems to not be working correctly, we should not be getting this strace.

To reproduce this issue just set a RabbitMQ hostname that does not exits.

    {"timestamp":"2016-07-06T12:40:55.153536+0000","level":"warn","message":"loaded extension","type":"handler","name":"debug","description":"returns raw event data"}
    /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/eventmachine-1.2.0.1/lib/eventmachine.rb:677:in `connect_server': unable to resolve server address: Connection timed out (EventMachine::ConnectionError)
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/eventmachine-1.2.0.1/lib/eventmachine.rb:677:in `bind_connect'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/eventmachine-1.2.0.1/lib/eventmachine.rb:653:in `connect'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/amqp-1.6.0/lib/amqp/session.rb:457:in `connect'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/amqp-1.6.0/lib/amqp.rb:242:in `connect'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-transport-6.0.0/lib/sensu/transport/rabbitmq.rb:188:in `setup_connection'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-transport-6.0.0/lib/sensu/transport/rabbitmq.rb:218:in `connect_with_eligible_options'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-transport-6.0.0/lib/sensu/transport/rabbitmq.rb:20:in `connect'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-transport-6.0.0/lib/sensu/transport.rb:24:in `connect'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-0.25.3/lib/sensu/daemon.rb:250:in `setup_transport'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-0.25.3/lib/sensu/server/process.rb:62:in `block in setup_connections'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-0.25.3/lib/sensu/daemon.rb:301:in `block in setup_redis'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-redis-1.4.0/lib/sensu/redis.rb:48:in `connect_direct'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-redis-1.4.0/lib/sensu/redis.rb:67:in `connect'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-0.25.3/lib/sensu/daemon.rb:286:in `setup_redis'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-0.25.3/lib/sensu/server/process.rb:57:in `setup_connections'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-0.25.3/lib/sensu/server/process.rb:1082:in `start'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-0.25.3/lib/sensu/server/process.rb:32:in `block in run'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/eventmachine-1.2.0.1/lib/eventmachine.rb:194:in `run_machine'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/eventmachine-1.2.0.1/lib/eventmachine.rb:194:in `run'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-0.25.3/lib/sensu/server/process.rb:31:in `run'
            from /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-0.25.3/exe/sensu-server:10:in `<top (required)>'
            from /opt/sensu/bin/sensu-server:22:in `load'
            from /opt/sensu/bin/sensu-server:22:in `<main>'
portertech commented 7 years ago

https://github.com/sensu/sensu-transport/pull/42 made it so we resolve DNS prior to attempting to connect. Thank you for reporting the issue :+1: