Fatal error when processing CSV file


I am processing a CSV file with a conf file I have used before together and have not gotten this error in the past on a different server. Passes config test and about 1/4 of the data makes it into Elastic without any issues before this error is thrown. How do I fix it?

[2018-01-04T14:35:38,437][FATAL][logstash.runner ] An unexpected error occurred! {:error=>#<SystemCallError: Unknown error (SystemCallError) - >, :backtrace=>["org/jruby/RubyIO.java:1457:in write'", "org/jruby/RubyIO.java:1428:inwrite'", "/usr/share/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-output-stdout-3.1.3/lib/logstash/outputs/stdout.rb:44:in block in multi_receive_encoded'", "org/jruby/RubyArray.java:1734:ineach'", "/usr/share/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-output-stdout-3.1.3/lib/logstash/outputs/stdout.rb:43:in multi_receive_encoded'", "/usr/share/logstash/logstash-core/lib/logstash/outputs/base.rb:90:inmulti_receive'", "/usr/share/logstash/logstash-core/lib/logstash/output_delegator_strategies/single.rb:15:in block in multi_receive'", "org/jruby/ext/thread/Mutex.java:148:insynchronize'", "/usr/share/logstash/logstash-core/lib/logstash/output_delegator_strategies/single.rb:14:in multi_receive'", "/usr/share/logstash/logstash-core/lib/logstash/output_delegator.rb:50:inmulti_receive'", "/usr/share/logstash/logstash-core/lib/logstash/pipeline.rb:487:in block in output_batch'", "org/jruby/RubyHash.java:1343:ineach'", "/usr/share/logstash/logstash-core/lib/logstash/pipeline.rb:486:in output_batch'", "/usr/share/logstash/logstash-core/lib/logstash/pipeline.rb:438:inworker_loop'", "/usr/share/logstash/logstash-core/lib/logstash/pipeline.rb:393:in `block in start_workers'"]}

(Mark Walkom) #2

What's your config look like? What version are you on? What JVM? What OS?



My config file:
input {
file {
start_position => "beginning"
path => ["/var/tmp/mycsv.CSV"]
filter {
csv {
separator => ","
autodetect_column_names => true
autogenerate_column_names => true

ruby {
code => "
hash = event.to_hash
hash.each do |key,value|
if value.to_s.include? '|' and !key.to_s.match(/message/)
array = value.to_s.split('|')
event.set(key, array)
output {
stdout { codec => "rubydebug" }
elasticsearch {
"hosts" => "myelastic:9200"
"index" => "grand-csv-test"
"document_type" => "c"

My logstash version: 6.1.1

My OS: Red Hat Enterprise Linux Server release 7.3


java version "1.8.0_152"
Java(TM) SE Runtime Environment (build 1.8.0_152-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)

(system) #4

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.