La OpenTelemetry APM UI es una experiencia seleccionada disponible para la entidad de servicio. Si no configuró su servicio con New Relic y OpenTelemetry, consulte MonitoreoOpenTelemetry APM .
Las OpenTelemetry APM UI páginas están diseñadas para ayudar a identificar y diagnosticar problemas rápidamente. Muchos requieren que los datos se ajusten a varias convenciones semánticas de OpenTelemetry, pero algunos son de propósito general.
Los siguientes conceptos de New Relic se repiten o se superponen en todas las páginas:
Encuentre servicios OpenTelemetry APM
Para encontrar los OpenTelemetry APM servicios , navegue a All entities > Services > OpenTelemetry o APM & Services. Haga clic en un servicio para navegar a la Summary page del servicio.
Dentro del explorador de entidades, puedes filtrar por etiqueta de entidad. Para obtener detalles sobre cómo se calculan las etiquetas de entidad, consulte los recursosOpenTelemetry en New Relic.
Página: Resumen
La página de resumen proporciona una descripción general del estado de su servicio, que incluye:
- Golden signals: tiempo de respuesta, rendimiento y tasa de errores. Consulte Golden signals para obtener detalles sobre cómo se calculan.
- Entidad relacionada: otros servicios que se comunican con este servicio e infraestructura relacionada. Consulte el Service map para obtener una vista detallada.
- Actividad: estado de cualquier alerta activa para este servicio.
- rastreo distribuido información valiosa: descubra si la entidad downstream o upstream podría estar contribuyendo a la degradación del rendimiento. Consulte Señales de entidad traza relacionadas para obtener más detalles.
- Instancia: desglose de señales doradas por instancia cuando un servicio se escala horizontalmente. Depende del atributo de recurso
service.instance.id
(consulte Servicios para obtener más detalles).
Página: rastreo distribuido
La página de rastreo distribuido proporciona información detallada y valiosa sobre los datos de traza OpenTelemetry . Consulte rastreo distribuido para obtener información sobre el uso de la página. Consulte OpenTelemetry traza en New Relic para obtener detalles sobre cómo se incorporan los datos de OpenTelemetry traza en New Relic.
Al igual que con las señales doradas, los intervalos se clasifican como errores si el estado del intervalo se establece en ERROR
(por ejemplo, otel.status_code = ERROR
). Si el intervalo es un error, la descripción del estado del intervalo (por ejemplo, otel.status_description
) se muestra en los detalles del error.
OpenTelemetry span evento adjunta información de contexto de evento adicional a un lapso particular. Se emplean más comúnmente para capturar información de excepciones. Si está disponible, puede ver el evento de un lapso en trace details.
Sugerencia
La presencia de un evento de excepción de lapso no califica el lapso como un error por sí solo. Sólo los intervalos con estado de intervalo establecido en ERROR
se clasifican como errores.
Página: Mapa de servicios
La página del mapa de servicio proporciona una representación visual de toda su arquitectura. Consulte los mapas de servicio para obtener más información.
Página: transacción
La página de transacciones proporciona herramientas para identificar problemas y analizar la transacción de un servicio.
Para métrica, la consulta asume que los datos se ajustan a las convenciones semánticas HTTP métrica o RPC métrica . Los atributos http.route
y rpc.method
se emplean para listar y filtrar por transacción.
Para los tramos, las consultas son genéricas y emplean solo el modelo de datos de tramo de nivel superior. Los lapsos se cuentan para el rendimiento de la transacción y el tiempo de respuesta como se describe en señales doradas. El campo de nombre de intervalo se emplea para enumerar y filtrar por transacción.
Página: base de datos
La página de base de datos proporciona herramientas para identificar problemas y analizar las operaciones del cliente de base de datos de un servicio.
No existe una vista basada en métricas de la base de datos ya que actualmente no hay convenciones semánticas disponibles.
Para los intervalos, la consulta asume que los datos se ajustan a las convenciones semánticas de intervalo de la base de datos . El nombre del intervalo y los atributos db.system
, db.sql.table
y db.operation
se emplean para enumerar y filtrar operaciones de base de datos.
Página: Servicios externos
La página de externos proporciona herramientas para identificar problemas y analizar las llamadas externas de un servicio, incluidas las llamadas de entidad (servicios ascendentes) y las llamadas de entidad (servicios descendentes).
No existe una vista basada en métricas de la página de servicios externos.
Para los tramos, las consultas son genéricas y emplean solo el modelo de datos de tramo de nivel superior. Los intervalos se cuentan para el rendimiento del servicio externo y el tiempo de respuesta si están saliendo de un servicio, se calcula empleando una heurística de WHERE span.kind = client OR span.kind = producer
. La base de datos abarcada por el cliente se filtra usando WHERE db.system is null
(consulte Página: base de datos). Al igual que con las señales doradas, los intervalos son errores si tienen un código de estado de ERROR
(por ejemplo, otel.status_code = ERROR
). Si están disponibles, se emplean datos de las convenciones semánticas HTTP span y RPC span para clasificar las llamadas de servicios externos.
Página: tiempo de ejecución de JVM
La página de tiempo de ejecución de JVM proporciona herramientas para identificar problemas y analizar la JVM de un servicio Java. La página solo se muestra para servicios que emplean OpenTelemetry java. Para diferenciar entre distintas instancias de servicio, la página requiere que se configure el atributo de recurso service.instance.id
(ver Servicios para obtener más detalles).
La página de tiempo de ejecución JVM muestra señales doradas junto con el tiempo de ejecución de JVM métrica para correlacionar los problemas de tiempo de ejecución con el uso del servicio. El interruptor métrica o spans determina si las señales doradas son impulsadas por datos span o métricas. No existe una vista basada en intervalos para el tiempo de ejecución métrica JVM .
Para métrica, la consulta asume que los datos se ajustan a las convenciones semánticas de métricaJVM . Tenga en cuenta que estas convenciones están incorporadas en la biblioteca de instrumentación de ejecución de JavaOpenTelemetry , que se incluye automáticamente con el agente de Java de OpenTelemetry .
Página: Ir al tiempo de ejecución
La página de tiempo de ejecución de Go proporciona herramientas para identificar problemas y analizar el tiempo de ejecución de un servicio Go. La página solo se muestra para servicios que emplean OpenTelemetry Go. Para diferenciar entre distintas instancias de servicio, la página requiere que se configure el atributo de recurso service.instance.id
(ver Servicios para obtener más detalles).
La página de tiempo de ejecución de Go muestra señales doradas junto con el tiempo de ejecución de Go métrico para correlacionar los problemas de tiempo de ejecución con el uso del servicio. El interruptor métrica o spans determina si las señales doradas son impulsadas por datos span o métricas. No existe una vista basada en intervalos para el tiempo de ejecución de Go métrica.
Para métrica, la consulta asume que los datos son producidos por la biblioteca de instrumentación en tiempo de ejecución OpenTelemetry Go. Tenga en cuenta que actualmente no existen convenciones semánticas para Go runtime métrica.
Página: logs
La página de Logs proporciona herramientas para identificar problemas y analizar el log de un servicio. Consulte Usar UI de log para obtener más información.
Página: Errors Inbox
La página Bandeja de entrada de errores proporciona herramientas para detectar y clasificar los errores de un servicio. Consulte Primeros pasos con la Bandeja de entrada de errores para obtener más detalles.
La página errors inbox está controlada por detalles de traza. Al igual que con las señales doradas, los intervalos se clasifican como errores si el estado del intervalo se establece en ERROR
(por ejemplo, otel.status_code = ERROR
).
Los intervalos de error se agrupan por su huella digital de error, y se calculan normalizando valores de identificación como UUID, valores hexadecimales, direcciones de email, etc. Cada intervalo de error distinto es una instancia individual dentro del grupo de errores. El mensaje del grupo de errores se determina de la siguiente manera:
- Descripción del estado del intervalo (por ejemplo,
otel.status_description
) rpc.grpc.status_code
De las convenciones semánticas de RPChttp.status_code
De las convenciones semánticas de HTTPhttp.response.status_code
De las convenciones semánticas de HTTPundefined
si ninguno de los anteriores está presente
Página: explorador métrica
El explorador métrico proporciona herramientas para explorar la métrica de un servicio de manera genérica. Consulte Explorar sus datos para obtener más información.
Señales doradas
Las señales doradas de rendimiento, tiempo de respuesta y tasa de errores aparecen en varios lugares de la OpenTelemetry APM UI. Cuando se emplean, se calculan de la siguiente manera:
Para métrica, la consulta asume que los datos se ajustan a las convenciones semánticas HTTP métrica o RPC métrica .
Para los tramos, las consultas son genéricas y emplean únicamente el modelo de datos de tramos de nivel superior. Los intervalos se cuentan para el rendimiento y el tiempo de respuesta si son intervalos de entrada raíz en un servicio, se calculan empleando una heurística de WHERE span.kind = server OR span.kind = consumer
. Los intervalos son errores si tienen un código de estado de ERROR
(por ejemplo, otel.status_code = ERROR
).
Limitar datos con filtros
Varias páginas incluyen una barra de filtros, con opciones como Restringir datos a.... Esto le permite filtrar consultas en la página para que coincidan con los criterios. Por ejemplo, puede restringir el despliegue a un canario en individuo filtrando por service.version='1.2.3-canary'
. Los filtros se conservan al navegar entre páginas.
Alternar métrica o tramos
Varias páginas incluyen un interruptor métrico o de extensión. Esto le permite elegir si las consultas se basan en datos métricos o span según los requisitos de análisis y la disponibilidad de datos.
Las métricas no están sujetas a ejemplificación y, por lo tanto, son más precisas, especialmente cuando se calculan tasas como el rendimiento. Sin embargo, las métricas están sujetas a restricciones de cardinalidad y pueden carecer de ciertos atributos importantes para el análisis. Por el contrario, los tramos están muestreados y, por lo tanto, están sujetos a problemas de precisión, pero tienen atributos más ricos ya que no están sujetos a restricciones de cardinalidad.
Históricamente, OpenTelemetry API y SDK del lenguaje y la instrumentación priorizaron la instrumentación de traza. Sin embargo, el proyecto recorrió un largo camino y Métrica está disponible en casi todos los idiomas. Consulte la documentación del lenguaje y la instrumentación relevantes para obtener más detalles.