Migrate metrics to Elastic

Elastic supports migration paths from Prometheus and Datadog. Because Elastic accepts OpenTelemetry Protocol (OTLP) and Prometheus remote write, you can run Elastic alongside your existing setup and migrate gradually, without switching everything at once. Follow the guide for the stack you're moving from:

Migrate from Prometheus
Keep Prometheus scraping and add Elastic as a remote write target. Explore the metrics in Kibana while your Grafana dashboards and PromQL keep working.
Migrate from Datadog
Send OpenTelemetry metrics to Elastic, replace Datadog Agent host and Kubernetes collection, and rebuild the dashboards and monitors you still need.

If you collect metrics with Metricbeat or Elastic Agent integrations and want to move to OpenTelemetry, refer to Move from Metricbeat or Elastic Agent integrations for the migration steps.

Metricbeat and Elastic Agent integrations produce ECS data and aren't deprecated, so you don't have to move. If you want OpenTelemetry-native metrics, first move standalone Beats to Fleet-managed Elastic Agent. Elastic Agent runs Beat inputs as Beat receivers inside its embedded Collector, so your ECS data, dashboards, and alerts keep working. Then replace Beat receivers with OTel-native receivers one data source at a time. Data from Beat receivers stays ECS. Only OTel-native receivers produce OpenTelemetry data.

Refer to Migrate from Beats to Elastic Agent for the first step and to Elastic Agent as an OpenTelemetry Collector for the Beat receiver rollout and OTel-native receivers.