Fleet-managed APM Server monitoring metrics on a dedicated monitoring cluster

Hi everyone,
I'm testing a fleet-managed apmserver and trying to understand the correct way to monitor the APM Server itself.

My current setup is:

  • A Fleet-managed APM Server. (stack version 9.4.1)

The policy default output sends APM data to the production/data cluster.

The policy monitoring output sends monitoring data to a separate monitoring cluster.

With my previous deployment (standalone apm-server + metricbeat), the APM Server appeared under Stack Monitoring in Kibana, and I could see all of its performance metrics (throughput, internal metrics, etc.).

After migrating to Fleet-managed APM Server, I no longer see the APM Server in the Monitoring section of Kibana.

I would like to understand what the recommended way is to send the APM Server's own monitoring metrics to the monitoring cluster so that they appear in Kibana, similarly to the standalone deployment.

While reading the documentation, I found this page:

It mentions enabling the HTTP endpoint on port 6791. However, in the Fleet policy, this port seems to correspond to the "Enable HTTP endpoint at /liveness" option.

Is enabling that option sufficient to expose the metrics needed for monitoring, or is there an additional configuration required?

I also installed the Elastic Agent integration, and I started receiving data in the monitoring cluster into metrics-elastic_agent.apm_server-default data streams. However, I still don't see the APM Server as a monitored component in the Kibana Monitoring UI.

So my questions are:

  1. What is the recommended way to collect and send the APM Server's internal monitoring metrics when it is managed by Fleet?

  2. Should those metrics appear in the Stack Monitoring UI, or are they only available through the Elastic Agent metrics data streams/dashboards?

  3. Is there any additional integration or configuration required beyond enabling Agent Monitoring and configuring a monitoring output?

I'm currently using a dedicated monitoring cluster and would like to see the APM monitoring data separated from the production cluster, just as I did with the standalone APM Server deployment.

Thanks in advance for any guidance.

After taking a second look at the documentation, I realized that the recommended approach seems to to use Metricbeat to collect and forward the APM Server monitoring metrics.

That changes my question a bit.

Since there are already Elastic Agent integrations that provide monitoring for other Stack components (for example, Elasticsearch, Kibana, and Logstash), I'm wondering if there is an equivalent approach for APM Server.

Is there a way to collect the APM Server's internal monitoring metrics using the existing Elastic Agent running on the host, instead of deploying a separate Metricbeat alongside it?

Or is Metricbeat currently the only supported option for exposing the APM Server in the Stack Monitoring UI when it is managed by Fleet?

I'd appreciate any clarification on the recommended approach going forward.