Java APM - logstash output

APM Agent language and version:
Java - 1.27.0

Original install method (e.g. download page, yum, deb, from source, etc.) and version:
Standalone java agent

Is there anything special in your setup? For example, are you using the Logstash or Kafka outputs? Are you using a load balancer in front of the APM Servers? Have you changed index pattern, generated custom templates, changed agent configuration etc.
APM agent -> logstash

Description of the problem including expected versus actual behavior. Please include screenshots (if relevant):
Is there an option to sent APM data to logstash in beats format? The server_url seems only to be allowed to be sending data to Elasticsearch directly. As a workaround a http input with json codec is possible, but I'm still wondering if it should be possible and/or if I am thinking about this wrong

Provide logs and/or server output (if relevant):
When APM is trying to use beats: "invalid version of beats protocol"

Hi @SanderP ,

Unlike Beats, the APM agents do not communicate directly to Elasticsearch,they have to send their data to APM server.

In agent configuration server_url should point to an APM Server, which is itself configured to write to Elasticsearch through output.elasticsearch configuration (see doc).

Hi @Sylvain_Juge

Sorry indeed, thanks! Not ES, but the APM Server. Can pass through logstash instead?
We don't have all servers allowed to access the Internet. If not, then as a workaround I should host the apm_server myself (instead of the current apm within Elastic Cloud) and point that one to ES within Elastic Cloud?

edit: At least there was a thinking error. Installing apm-server manually works indeed for me as a bypass to the Internet (output ES Cloud). I would prefer currently to use logstash as a middleware which sends data to the Cloud APM Server which put the data in ES in the same deployment to have the server managed there.

There is no way to make APM server use logstash as gateway to send data.

As an alternate option, maybe using an HTTP proxy next to logstash that allows to only send APM data should be simpler to maintain that using your own apm-server deployment and write directly to ES.

But, I'm really not familiar with all the deployment options here, maybe there is a simpler way to handle such case.

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