Términos y conceptos de APM

Resumen

La interfaz de usuario de APM proporciona muchas herramientas para solucionar problemas de rendimiento de aplicaciones y correlacionarlos a lo largo del producto, permitiéndole encontrar y resolver problemas en sistemas distribuidos

Para definiciones y descripciones adicionales de términos importantes de APM como tramos y indexado, consulte el glosario principal

ConceptoDescripción
Los serviciosson los bloques de construcción de arquitecturas modernas de microservicios; en términos generales, un servicio agrupa puntos de conexión, consultas o trabajos con el propósito de construir su aplicación
Los recursosrepresentan un dominio particular de una aplicación del cliente; típicamente son un punto de conexión web instrumentado, una consulta de base de datos o un trabajo en segundo plano
MonitoresLos monitores de métricas de APM funcionan como monitores de métricas regulares, pero con controles adaptados específicamente a APM. Utilice estos monitores para recibir alertas a nivel de servicio sobre hits, errores y una variedad de medidas de latencia
Una traza se utiliza para rastrear el tiempo que dedica una aplicación a procesar una solicitud y el estado de la misma Cada traza consiste en uno o más tramos.
Propagación del contexto de trazasEl método de pasar identificadores de traza entre servicios, permitiendo que Datadog una los tramos individuales en una traza distribuida completa
Filtros de RetenciónLos filtros de retención son controles basados en etiquetas establecidos dentro de la interfaz de usuario de Datadog que determinan qué tramos indexar en Datadog durante 15 días.
Controles de IngestaLos controles de ingesta se utilizan para enviar hasta el 100% de las trazas a Datadog para búsqueda y análisis en vivo durante 15 minutos.
La instrumentación es el proceso de agregar código a su aplicación para capturar e informar datos de observabilidad
EquipajeEl equipaje es información contextual que se pasa entre trazas, métricas y registros en forma de pares clave-valor.

Servicios

Después de instrumentar su aplicación, el Catálogo es su página principal para los datos de APM.

Catálogo

Los servicios son los bloques de construcción de arquitecturas modernas de microservicios; en términos generales, un servicio agrupa puntos de conexión, consultas o trabajos con el propósito de escalar instancias Algunos ejemplos:

  • Un grupo de puntos de conexión de URL puede agruparse bajo un servicio API
  • Un grupo de consultas de base de datos que se agrupan dentro de un servicio de base de datos.
  • Un grupo de trabajos periódicos configurados en el servicio crond.

La captura de pantalla a continuación es un sistema de microservicios distribuido para un constructor de sitios de comercio electrónico. Hay un web-store, ad-server, payment-db y auth-service todos representados como servicios en APM.

Service Map

Todos los servicios se pueden encontrar en el Catálogo y se representan visualmente en el Service Map. Cada servicio tiene su propia Página de Servicio donde se pueden ver e inspeccionar métricas de traza como rendimiento, latencia y tasas de error. Utilice estas métricas para crear widgets de dashboard, crear monitores y ver el rendimiento de cada recurso, como un punto de conexión web o una consulta de base de datos perteneciente al servicio

¿No ve los puntos de conexión HTTP que esperaba en la Página de Servicio? En APM, los puntos de conexión están conectados a un servicio por algo más que el nombre del servicio También se realiza mediante el `span.name` del span de punto de entrada de la traza Por ejemplo, en el servicio de tienda web anterior, `web.request` es el span de punto de entrada. Más información sobre esto aquí.

Recursos

Los recursos representan un dominio particular de una aplicación del cliente. Podrían ser típicamente un punto de conexión web instrumentado, una consulta a la base de datos o un trabajo en segundo plano Para un servicio web, estos recursos pueden ser puntos de conexión web dinámicos que se agrupan por un nombre de span estático - web.request En un servicio de base de datos, estos serían consultas a la base de datos con el nombre de span db.query. Por ejemplo, el servicio web-store ha instrumentado automáticamente recursos: puntos de conexión web que manejan pagos, actualizaciones de carritos, adición de artículos, y así sucesivamente Un nombre de recurso puede ser el método HTTP y la ruta HTTP, por ejemplo GET /productpage o ShoppingCartController#checkout.

Cada recurso tiene su propia página de recurso con métricas de traza específicas para el punto de conexión Las métricas de traza se pueden usar como cualquier otra métrica de Datadog: son exportables a un Dashboard o se pueden usar para crear monitores La página de recurso también muestra el widget de resumen de tramo con una visualización agregada de tramos para todas las trazas, la distribución de latencia de las solicitudes y las trazas que muestran las solicitudes realizadas a este punto de conexión.

Traza

Una traza se utiliza para rastrear el tiempo que pasa una aplicación procesando una solicitud y el estado de esta solicitud. Cada traza consiste en uno o más tramos. Durante la vida útil de la solicitud, puedes ver llamadas distribuidas entre servicios (porque un ID de traza se inyecta/se extrae a través de encabezados HTTP), bibliotecas instrumentadas automáticamente y instrumentación manual utilizando herramientas de código abierto como OpenTracing en la visualización de gráfico de llamas. En la página de vista de traza, cada traza recopila información que la conecta a otras partes de la plataforma, incluyendo conectar registros a trazas, agregar etiquetas a tramos y recopilar métricas de tiempo de ejecución.

vista de traza

Propagación del contexto de trazas

La propagación del contexto de trazas es el método de pasar identificadores de traza entre servicios en un sistema distribuido. Permite a Datadog unir tramos individuales de diferentes servicios en una sola traza distribuida. La propagación del contexto de trazas funciona inyectando identificadores, como el ID de traza y el ID de tramo padre, en los encabezados HTTP a medida que la solicitud fluye a través del sistema. El servicio descendente luego extrae estos identificadores y continúa la traza. Esto permite a Datadog reconstruir el camino completo de una solicitud a través de múltiples servicios.

Para más información, consulte la propagación del contexto de trazas para el lenguaje de su aplicación.

Filtros de retención

Establecer filtros basados en etiquetas en la interfaz de usuario para indexar tramos durante 15 días para su uso con Búsqueda y Análisis de Trazas.

Controles de ingestión

Envíe el 100% de las trazas de sus servicios a Datadog y combínelas con filtros de retención basados en etiquetas para mantener las trazas que importan para su negocio durante 15 días

Instrumentación

La instrumentación es el proceso de agregar código a su aplicación para capturar y reportar datos de observabilidad a Datadog, como trazas, métricas y registros Datadog proporciona bibliotecas de instrumentación para varios lenguajes de programación y frameworks.

Puede instrumentar automáticamente su aplicación cuando instale el Datadog Agent con Instrumentación de un solo paso o cuando agregue manualmente los SDK de Datadog a su código

Puede usar instrumentación personalizada al incrustar código de traza directamente en el código de su aplicación. Esto le permite crear, modificar o eliminar trazas programáticamente para enviarlas a Datadog.

Para obtener más información, lea Instrumentación de Aplicaciones.

Baggage

Baggage le permite propagar pares clave-valor (también conocidos como elementos de Baggage) a través de los límites del servicio en un sistema distribuido. A diferencia del contexto de traza, que se centra en los identificadores de traza, Baggage permite la transmisión de datos comerciales y otra información contextual junto con las trazas.

Para aprender más, lea los formatos de propagación soportados para el lenguaje de su aplicación.

Lectura Adicional