Details
-
Type:
Bug/Feature
-
Status: Resolved (View workflow)
-
Resolution: Fixed
-
Affects Version/s: 1.1.10
-
Fix Version/s: 1.2.0
-
Labels:None
Description
It seems like a thread might be dying. If I send events in quick succession they work as expected. But if I have a long delay between events I get an exception like below, which then seems to cause the plugin to restart.
{:timestamp=>"2013-05-06T20:10:19.848000+0000", :message=>"Unhandled exception", :request=><FTW::Request(@3914) @protocol="https" @body="room_id=28800&from=logstash&color=yellow¬ify=0&message=some+message" @method="POST" @headers=FTW::HTTP::Headers <{"host"=>"api.hipchat.com", "connection"=>"keep-alive", "content-type"=>"application/x-www-form-urlencoded", "content-length"=>77}> @logger=#<Cabin::Channel:0x70029fd0 @subscriber_lock=#<Mutex:0x31495ec1>, @metrics=#<Cabin::Metrics:0x47ebea2e @channel=#<Cabin::Channel:0x70029fd0 ...>, @metrics={}, @metrics_lock=#<Mutex:0x515b96e5>>, @data={}, @subscribers={}, @level=:info> @version=1.1 @request_uri="/v1/rooms/message?auth_token=8d291eb179c7861dfdfe402b4916f8" @port=443 >, :response=>nil, :exception=>#<EOFError: End of file reached>, :stacktrace=>["org/jruby/ext/openssl/SSLSocket.java:631:in `sysread'", "jar:file:/ebs/logstash/server/lib/logstash-1.1.10.jar!/gems/ftw-0.0.29/lib/ftw/connection.rb:230:in `read'", "jar:file:/ebs/logstash/server/lib/logstash-1.1.10.jar!/gems/ftw-0.0.29/lib/ftw/protocol.rb:30:in `read_http_message'", "jar:file:/ebs/logstash/server/lib/logstash-1.1.10.jar!/gems/ftw-0.0.29/lib/ftw/request.rb:93:in `execute'", "jar:file:/ebs/logstash/server/lib/logstash-1.1.10.jar!/gems/ftw-0.0.29/lib/ftw/agent.rb:311:in `execute'", "file:/ebs/logstash/server/lib/logstash-1.1.10.jar!/logstash/outputs/hipchat.rb:60:in `receive'", "file:/ebs/logstash/server/lib/logstash-1.1.10.jar!/logstash/outputs/base.rb:55:in `handle'", "file:/ebs/logstash/server/lib/logstash-1.1.10.jar!/logstash/agent.rb:785:in `run_output'", "file:/ebs/logstash/server/lib/logstash-1.1.10.jar!/logstash/agent.rb:399:in `start_output'"], :level=>:warn}
Upon testing. 60s seems to be the timeout
Succeeds:
logger -t deploy "test 1" && sleep 55 && logger -t deploy "test 2"
Fails on #2:
logger -t deploy "test 1" && sleep 65 && logger -t deploy "test 2"