Puede recopilar métrica desde cualquier software que exponga Prometheus métrica con el recolector OpenTelemetry utilizando el receptor comunitario Prometheus. El recolector es un componente de OpenTelemetry que recopila, procesa y exporta telemetry data a New Relic (o cualquier backend de observabilidad).
Sugerencia
Si busca ayuda con otros casos de uso del recolector, consulte el repositorio newrelic-OpenTelemetry-examples .
Complete los pasos a continuación para recolectar Prometheus métrica.
Compruebe estos requisitos previos
Si aún no lo has hecho:
En su aplicación de destino, asegúrese de exponer el extremo métrico de Prometheus para que sea accesible para el componente receptor de Prometheus en el recolector OpenTelemetry.
- El Prometheus métrica extremo podría estar habilitado de forma predeterminada o es posible que necesite realizar una configuración adicional para habilitarlo.
- Algunos programas pueden requerir que un exportador de Prometheus externo exponga métrica.
Instale el recolector de OpenTelemetry siguiendo los pasos en los documentos de OpenTelemetry.
Puedes utilizar cualquier distribución siempre que tenga estos dos componentes: exportador OTLP/HTTP y receptor Prometheus.
Configurar el recolector OpenTelemetry
Actualice o cree un nuevo archivo llamado config.yaml
y reemplace las siguientes claves en el archivo con sus propios valores:
Configuración de raspado de Prometheus:
PROMETHEUS_JOBNAME
PROMETHEUS_HOSTNAME
PROMETHEUS_ENDPOINT_PORT
PROMETHEUS_ENDPOINT_PATH
(opcional, el valor predeterminado es /métrica)
NEW_RELIC_LICENSE_KEY
receivers:prometheus:config:scrape_configs:- job_name: "PROMETHEUS_JOBNAME"static_configs:- targets: [ "PROMETHEUS_HOSTNAME:PROMETHEUS_ENDPOINT_PORT" ]labels:label_example: VALUE_EXAMPLEmetrics_path: PROMETHEUS_ENDPOINT_PATHexporters:otlphttp:endpoint: https://otlp.nr-data.netheaders:api-key: NEW_RELIC_LICENSE_KEYprocessors:service:telemetry:logs:pipelines:metrics:receivers: [prometheus]processors: [batch, memory_limiter]exporters: [otlphttp]Para obtener más opciones de configuración, revise:
Documentos de configuración de Prometheus para obtener detalles de configuración adicionales.
Ejecute el recolector
Ejecute el recolector OpenTelemetry . La forma de ejecutarlo puede variar según el método de instalación elegido. Por ejemplo:
/usr/bin/otelcol --config ./config.yaml
Encuentra y utiliza tus datos
Puede utilizar el explorador métrico para comprobar la métrica que se está ingiriendo. Todas las métricas reportadas por el receptor OTEL Prometheus se detectan ejecutando la siguiente consulta.
SELECT count(*)FROM MetricWHERE instrumentation.provider='opentelemetry' and otel.library.name='otelcol/prometheusreceiver'FACET metricName
Resolución de problemas: los nombres métricos no coinciden
El panel de control basado en Prometheus métrica y la entidad utilizan las convenciones de nomenclatura de Prometheus métrica para coincidir con la métrica que informa el extremo de Prometheus. Sin embargo, el receptor OpenTelemetry Prometheus utiliza las convenciones de nomenclatura de OpenTelemetry de forma predeterminada después de v076.3.
Para usar las convenciones de nomenclatura métrica de Prometheus, deshabilite la característica-gate pkg.translator.prometheus.NormalizeName
cuando ejecute el recolector OpenTelemetry:
$otelcol-contrib --config ./config.yaml --feature-gates=-pkg.translator.prometheus.NormalizeName