Some requests in my logstash failed the http output plugin, and the log showing
[2020-10-16T18:44:54,574][ERROR][logstash.outputs.http ] [HTTP Output Failure] Could not fetch URL {:url=>"https://www.example.com/api.php", :method=>:post, :body=>"{"id":"test"}", :headers=>{"Content-Type"=>"text/plain"}, :message=>"Connection reset", :class=>"Manticore::UnknownException", :backtrace=>["/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/manticore-0.6.4-java/lib/manticore/response.rb:37:in
block in initialize'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/manticore-0.6.4-java/lib/manticore/response.rb:79:in
call'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-http-5.2.4/lib/logstash/outputs/http.rb:239:insend_event'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-http-5.2.4/lib/logstash/outputs/http.rb:175:in
send_events'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-http-5.2.4/lib/logstash/outputs/http.rb:124:inmulti_receive'", "org/logstash/config/ir/compiler/OutputStrategyExt.java:118:in
multi_receive'", "org/logstash/config/ir/compiler/AbstractOutputDelegatorExt.java:101:inmulti_receive'", "/usr/share/logstash/logstash-core/lib/logstash/java_pipeline.rb:239:in
block in start_workers'"], :will_retry=>false}
What would be the reason? And how to fix it, i.e. retry again later?
My logstash output configuration is
output {
if [message] == "..." {
http {
format=>"message"
http_method=>"post"
url=>"xxx"
message=>'...'
}
}
}
retry_failed
option determines whether the logstash output plugin will retry requests. This is set to true by default, so it should keep retrying infinitely. I am surprised why that is not happening in your case. Can seewill_retry=>false
in error message, will need to see how output plugin determines when to retry and when not to. – karan shah