dynatrace-oss / logstash-output-dynatrace

A Logstash output plugin for sending logs to Dynatrace
4 stars 1 forks source link

Logstash Dynatrace output plugin #36

Open yogeshkumark opened 5 months ago

yogeshkumark commented 5 months ago

Describe the bug A clear and concise description of what the bug is. Unfortunately the dynatrace output plugin is not supported by Elastic. Take a look at the list of supported Logstash Plugins on our Support Matrix.

In order to help you with the resolution the output plugin is reporting constantly HTTP 400 errors, that means the requests made to Dynatrace system are incorrect. Also the continuous thread dumps are probably caused by the output plugin too.

Example from your error logs:

[2024-06-03T14:51:03,044][ERROR][logstash.outputs.dynatrace][main][dynatrace_output] Encountered non-2xx HTTP code 400 {:response_code=>400, :ingest_endpoint_url=>"https://ivu08603.live.dynatrace.com/api/v2/logs/ingest", :event=>"[{\"message\":\"kfdcdp35 2024-05-23 13:16:53,776 [WMQJCAResourceAdapter : 57] INFO (appTrace) - PASSED;SCOL;WU:1000655469;ID:5000579951;GTI:0336a24b-ee63-4e73-a6a8-.... ... ... And the message is apparently huge. ... ... You need to clarify why you are getting those 400 errors from the remote. i would recommend to start with very small and test messages to ensure everything works. And then analyze the big message that Logstash is sending to double check if it’s correct and expected.

Sorry we won’t be able to help further on that, as the error is related with the unsupported output plugin. You will have to check with the maintainer of that plugin.

Regards! Eduardo

To Reproduce Steps to reproduce the behavior:

  1. Go to 'Logstash to read the data from ES and forward the logs to Dynatrace output plugin .'
  2. Click on 'following are the configuration used to send the data ' output { dynatrace { id => "dynatrace_output" ingest_endpoint_url => "https://xxxivxux0x8x6x0x3.cbnlive.dynatrace.com/api/v2/logs/ingest" api_key => "dt0c01.xxxxxxxx.xxxxxxxx" proxy => {host => "proxy.hlag.com" port => 11009 scheme => 'http'} } }
  3. Scroll down to '....'
  4. See error

Expected behavior A clear and concise description of what you expected to happen.

Screenshots If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

Smartphone (please complete the following information):

Additional context Add any other context about the problem here. Unfortunately the dynatrace output plugin is not supported by Elastic. Take a look at the list of supported Logstash Plugins on our Support Matrix.

In order to help you with the resolution the output plugin is reporting constantly HTTP 400 errors, that means the requests made to Dynatrace system are incorrect. Also the continuous thread dumps are probably caused by the output plugin too.

Example from your error logs:

[2024-06-03T14:51:03,044][ERROR][logstash.outputs.dynatrace][main][dynatrace_output] Encountered non-2xx HTTP code 400 {:response_code=>400, :ingest_endpoint_url=>"https://ivu08603.live.dynatrace.com/api/v2/logs/ingest", :event=>"[{\"message\":\"kfdcdp35 2024-05-23 13:16:53,776 [WMQJCAResourceAdapter : 57] INFO (appTrace) - PASSED;SCOL;WU:1000655469;ID:5000579951;GTI:0336a24b-ee63-4e73-a6a8-.... ... ... And the message is apparently huge. ... ... You need to clarify why you are getting those 400 errors from the remote. i would recommend to start with very small and test messages to ensure everything works. And then analyze the big message that Logstash is sending to double check if it’s correct and expected.

Sorry we won’t be able to help further on that, as the error is related with the unsupported output plugin. You will have to check with the maintainer of that plugin.

Regards! EduardoUnfortunately the dynatrace output plugin is not supported by Elastic. Take a look at the list of supported Logstash Plugins on our Support Matrix.

In order to help you with the resolution the output plugin is reporting constantly HTTP 400 errors, that means the requests made to Dynatrace system are incorrect. Also the continuous thread dumps are probably caused by the output plugin too.

Example from your error logs:

[2024-06-03T14:51:03,044][ERROR][logstash.outputs.dynatrace][main][dynatrace_output] Encountered non-2xx HTTP code 400 {:response_code=>400, :ingest_endpoint_url=>"https://ivu08603.live.dynatrace.com/api/v2/logs/ingest", :event=>"[{\"message\":\"kfdcdp35 2024-05-23 13:16:53,776 [WMQJCAResourceAdapter : 57] INFO (appTrace) - PASSED;SCOL;WU:1000655469;ID:5000579951;GTI:0336a24b-ee63-4e73-a6a8-.... ... ... And the message is apparently huge. ... ... You need to clarify why you are getting those 400 errors from the remote. i would recommend to start with very small and test messages to ensure everything works. And then analyze the big message that Logstash is sending to double check if it’s correct and expected.

Sorry we won’t be able to help further on that, as the error is related with the unsupported output plugin. You will have to check with the maintainer of that plugin.

Regards! Eduardo

dyladan commented 5 months ago

What version of the plugin are you running? I believe you may be running into an issue that was fixed in https://github.com/dynatrace-oss/logstash-output-dynatrace/releases/tag/v0.5.1 where large messages were rejected by Dynatrace. Starting in 0.5.1 those are split into smaller batches automatically by the plugin if possible.

yogeshkumark commented 5 months ago

./jdk/jmods/jdk.dynalink.jmod ./jdk/legal/jdk.dynalink/dynalink.md ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/spec/outputs/dynatrace_spec.rb ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/spec/spec_helper.rb ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/Gemfile ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/CHANGELOG.md ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/version.yaml ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/logstash-output-dynatrace.gemspec ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/lib/logstash/outputs/dynatrace.rb ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/lib/dynatrace/version.rb ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/CONTRIBUTING.md ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/README.md ./vendor/bundle/jruby/2.6.0/gems/logstash-output-dynatrace-0.6.0/LICENSE ./vendor/bundle/jruby/2.6.0/specifications/logstash-output-dynatrace-0.6.0.gemspec ./vendor/bundle/jruby/2.6.0/cache/logstash-output-dynatrace-0.6.0.gem root@545f7097f2e2:/usr/share/logstash#

Above is the version is 0.6- i guess it is latest or i need to downgrade to lower version ?

dyladan commented 2 weeks ago

I'm sorry to follow up so late on this. Are you still experiencing this issue? 0.6.0 should be late enough to have proper batch splitting. There are other ways you can receive a 400 response if for example you have characters that are not accepted by the API or cause the JSON to be malformed