Integracion OpenTelemetry (OTLP)
Enviar metricas de pruebas de carga por OpenTelemetry
La integracion OpenTelemetry exporta las metricas en vivo de sus pruebas de carga a traves del protocolo OpenTelemetry (OTLP) a cualquier backend compatible con OTLP, para que pueda seguir una prueba en la misma herramienta que ya usa para observabilidad. Funciona con Honeycomb, Grafana Cloud, New Relic, Datadog, Dynatrace, Elastic y cualquier OpenTelemetry Collector autoalojado.
Crear la integracion
- Vaya a
Account>Integration Settings. - Haga clic en
New Integrationy elijaOpenTelemetry. - Complete los campos siguientes y haga clic en
Save integration.
Campos de la integracion
- Name: Una etiqueta para esta integracion, por ejemplo
Honeycomb HTTP. - OTLP Endpoint: A donde se envian las metricas.
- Para HTTP (protobuf), use la URL base incluyendo el esquema, por ejemplo
https://api.honeycomb.io. LoadFocus anade/v1/metricspor usted. - Para gRPC, use
host:port, por ejemploapi.honeycomb.io:443. Si omite el esquema, se asumehttps://.
- Para HTTP (protobuf), use la URL base incluyendo el esquema, por ejemplo
- Protocol:
HTTP (protobuf)(el valor por defecto, funciona en todas partes) ogRPC. - Headers: Pares
key=valueseparados por comas para la autenticacion, por ejemploapi-key=YOUR_KEY,x-tenant=team. Es el unico campo secreto y se almacena cifrado.
Endpoints y Headers por backend
| Backend | Endpoint (HTTP) | Endpoint (gRPC) | Headers |
|---|---|---|---|
| Honeycomb | https://api.honeycomb.io | api.honeycomb.io:443 | x-honeycomb-team=INGEST_KEY,x-honeycomb-dataset=DATASET_NAME |
| Grafana Cloud | URL del gateway OTLP de su stack | no disponible en el gateway alojado | Authorization=Basic BASE64(instanceID:token) |
| New Relic | https://otlp.nr-data.net (US) o https://otlp.eu01.nr-data.net (EU) | otlp.nr-data.net:4317 | api-key=LICENSE_KEY |
| Dynatrace | https://ENV.live.dynatrace.com/api/v2/otlp | no disponible | Authorization=Api-Token TOKEN |
| Elastic | URL OTLP de su servidor APM | host:8200 de su servidor APM | Authorization=ApiKey API_KEY |
| Collector autoalojado | http(s)://su-collector:4318 | su-collector:4317 | opcional |
Notas sobre Honeycomb
- Use una Ingest Key, creada en
Environment Settings>API Keys>Ingest. Copie el Key Secret que se muestra una sola vez al crear la clave, no la Key ID mas corta de la lista. Enviar la Key ID devuelveunknown API key(HTTP 401). - Las metricas requieren el header
x-honeycomb-datasetpara nombrar el dataset de destino. - De a la clave el permiso
Can create services/datasetspara que el dataset se cree con las primeras metricas que lleguen.
Asignar la integracion a una prueba
- Abra una prueba de JMeter o k6 y vaya a su seccion
Integrations. - Seleccione su integracion OpenTelemetry en el desplegable.
- Guarde la prueba y ejecutela.
Cada ejecucion con una integracion asignada envia sus metricas al backend configurado.
Que vera
Las metricas llegan etiquetadas con los atributos de recurso service.name, loadfocus.testrunname y loadfocus.testrunid, para que pueda filtrar por ejecucion.
- Las pruebas de JMeter envian
jmeter.samples,jmeter.response_time_msyjmeter.errors, etiquetadas consampleryresponse_code. JMeter agrupa y vuelca al final de la ejecucion, por lo que sus metricas aparecen cuando la ejecucion termina. - Las pruebas de k6 envian las metricas estandar de k6 como
http_req_duration,http_reqs,vuseiterations, transmitidas mientras la prueba se ejecuta.
Solucion de problemas
unknown API keyo HTTP 401: la credencial es incorrecta o falta. En Honeycomb, confirme que uso el Key Secret y no la Key ID.- Sin datos en el backend: confirme el nombre de destino (dataset de Honeycomb, cuenta de New Relic, etc.), confirme el header de autenticacion y recuerde que las metricas de JMeter solo aparecen cuando la ejecucion ha terminado.
- Endpoint rechazado: los endpoints HTTP deben incluir el esquema
https://; los endpoints gRPC usanhost:port. - La ejecucion no se ve afectada: si una integracion esta mal configurada, la prueba se ejecuta igualmente, simplemente no exporta metricas.
Editar o eliminar la integracion
- Editar: en
Integration Settings, haga clic en el icono de editar de la integracion para cambiar el nombre, el endpoint, el protocolo o los headers. Deje el campo Headers vacio para conservar la credencial actual; introduzca un valor solo cuando quiera reemplazarla. - Eliminar: haga clic en el icono de eliminar de la integracion para quitarla de sus servicios de informes externos.