elastic / elastic/logstash

Logstash crashes when auto reloading configuration and syslog input plugin has incoming connection

Open
#6,663 2 comments 2 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
14.9k
Forks
3.5k
Avg merge
1d 4h
Merged PRs (30d)
88

Description

When using the syslog input plugin and using the config auto reload, LS crashes with the following error:

[2017-02-08T09:49:49,873][FATAL][logstash.runner ] An unexpected error occurred! {:error=>#, :backtrace=>["org/jruby/RubyIO.java:3565:in `each'", "/usr/share/logstash/vendor/bundle/jruby/1.9/gems/logstash-input-syslog-3.2.0/lib/logstash/inputs/syslog.rb:182:in `tcp_receiver'", "/usr/share/logstash/vendor/bundle/jruby/1.9/gems/logstash-input-syslog-3.2.0/lib/logstash/inputs/syslog.rb:167:in `tcp_listener'"]}

- Version: 5.1.2
- Operating System: Ubuntu 16.04
- Steps to Reproduce:
* Configure syslog input plugin and auto reload
* Wait for incoming connection from rsyslog
* Change a configuration file

Contributor guide

Open the contributing guide

Research direction

The failure points to logstash-input-syslog-3.2.0/lib/logstash/inputs/syslog.rb, especially tcp_listener at line 167 and tcp_receiver at line 182. Start by reproducing the reported sequence with syslog input, auto reload, an incoming rsyslog connection, and a configuration change. Done means reloading no longer crashes Logstash with Errno::EBADF.

Written by the indexing model from the issue text.

Assessment

Tech stack
ruby
Domain
backend, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.