APM Términos y conceptos

Información general

La interfaz de usuario APM ofrece numerosas herramientas para solucionar problemas de rendimiento de las aplicaciones y correlacionarlos en todo el producto, lo que te permite encontrar y resolver problemas en sistemas distribuidos.

Para más definiciones y descripciones de términos importantes de APM, como spans e indexed, consulte el glosario principal.

ConceptoDescripción
ServicioLos servicios son los bloques de construcción de las modernas arquitecturas de micro servicios: en términos generales, un servicio agrupa endpoints, consultas o trabajos con el fin de construir tu aplicación.
RecursoLos recursos representan un dominio concreto de una aplicación del cliente: suelen ser un endpoint web instrumentado, una consulta a una base de datos o un trabajo en segundo plano.
MonitoresLos monitores APM de métrica funcionan como los monitores de métrica normales, pero con controles adaptados específicamente a APM. Utiliza estos monitores para recibir alertas al nivel de servicio sobre aciertos, errores y una variedad en las medidas de latencia.
TrazasUna traza se utiliza para realizar un seguimiento del tiempo empleado por una aplicación procesando una solicitud y el estado de esta solicitud. Cada traza consta de uno o varios tramos (spans).
Propagación de contexto de rastreoEl método para pasar identificadores de traza (trace) entre servicios, lo que permite a Datadog juntar tramos (spans) individuales en una traza distribuida completa.
Filtros de retenciónLos filtros de retención son controles basados en etiquetas establecidos en la interfaz de usuario de Datadog que determinan qué tramos se indexar en Datadog durante 15 días.
Controles de ingestaLos controles de ingesta se utilizan para el envío de hasta el 100% de las trazas a Datadog para buscar en directo y analizar durante 15 minutos.
InstrumentaciónLa instrumentación es el proceso de añadir código a tu aplicación para capturar e informar los datos de observabilidad.

Servicios

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

Catálogo de servicios

Los servicios son los componentes básicos de las arquitecturas de microservicios modernas: en términos generales, un servicio agrupa endpoints, consultas o trabajos con el fin de escalar instancias. Algunos ejemplos son:

  • Un grupo de endpoints de URL puede agruparse bajo un servicio de API.
  • Un grupo de consultas a la 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 siguiente captura de pantalla es un sistema distribuido de microservicios para un constructor de sitios de comercio electrónico. Hay web-store, ad-server, payment-db y auth-service, todos representados como servicios en APM.

Mapa de servicios

Todos los servicios pueden encontrarse en el Catálogo de servicios y representarse visualmente en el Mapa de servicios. Cada servicio tiene su propia Página de servicios donde puedes ver y analizar métricas de traza como el rendimiento, la latencia y las tasas de error. Utiliza estas métricas para crear widgets de dashboard, monitores y ver el rendimiento de cada recurso, como un endpoint web o una consulta de base de datos perteneciente al servicio.

¿No ves los endpoints HTTP que esperabas en la Página de servicios? En APM, los endpoints están conectados a un servicio por algo más que el nombre de servicio. También se conectan con el `span.name` del tramo de punto de entrada de la traza. Por ejemplo, en el servicio de tienda web anterior, `web.request` es el tramo del punto de entrada. Más información al respecto aquí.

Recursos

Los recursos representan un dominio particular de una aplicación del cliente. Por lo general, pueden ser un endpoint web instrumentado, una consulta de base de datos o un trabajo en segundo plano. En un servicio web, estos recursos pueden ser endpoints web dinámicos agrupados por un nombre de tramo estático: web.request. En un servicio de base de datos, serían consultas de base de datos con el nombre de tramo db.query. Por ejemplo, el servicio web-store tiene recursos instrumentados automáticamente (endpoints web) que gestionan las compras, actualizan los carritos, añaden artículos, etc. 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 recursos con métricas de traza para el endpoint específico. Las métricas de traza pueden utilizarse como cualquier otra métrica de Datadog, son exportables a un dashboard o pueden utilizarse para crear monitores. La Página de recursos también muestra el widget de resumen del tramo con una vista agregada de tramos para todas las trazas, distribución de latencia de las solicitudes y trazas que muestran las solicitudes realizadas a este endpoint.

Traza

Una traza se utiliza para realizar un seguimiento del tiempo empleado por una aplicación procesando una solicitud y el estado de esta solicitud. Cada traza consta de uno o más tramos. Durante el tiempo de vida de la solicitud, puedes ver las llamadas distribuidas a través de servicios (porque se inyecta/extrae un ID de traza a través de encabezados HTTP), bibliotecas instrumentadas automáticamente e instrumentación manual mediante herramientas de código abierto como OpenTracing en la vista de la gráfica de llamas. En la página Vista de traza, cada traza recopila información que la conecta con otras partes de la plataforma, incluyendo conectar logs a trazas, añadir etiquetas a tramos y recopilar métricas de tiempo de ejecución.

Vista de traza

Propagación del contexto de rastreo

La propagación del contexto de rastreo es el método para pasar identificadores de traza entre servicios en un sistema distribuido. Permite a Datadog unir tramos individuales de diferentes servicios en una única traza distribuida. La propagación de contexto de rastreo funciona inyectando identificadores, como el ID de traza y el ID de tramo principal, en los encabezados HTTP a medida que la solicitud fluye por el sistema. Luego, el servicio de descarga extrae estos identificadores y continúa la traza. Esto permite a Datadog reconstruir la ruta completa de una solicitud a través de múltiples servicios.

Para más información, consulta la propagación del contexto de rastreo para el lenguaje de tu aplicación.

Filtros de retención

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

Controles de ingesta

Envía el 100% de las trazas de tus servicios a Datadog y combínalas con filtros de retención basados en etiquetas para conservar trazas relevantes para tu negocio durante 15 días.

Instrumentación

La instrumentación es el proceso de añadir código a tu aplicación para capturar e informar datos de observabilidad a Datadog, como trazas, métricas y logs. Datadog proporciona bibliotecas de instrumentación para varios lenguajes y marcos de programación.

Puedes instrumentar automáticamente tu aplicación cuando instales el Datadog Agent con la Instrumentación de paso único o cuando añadas de forma manual bibliotecas de rastreo de Datadog a tu código.

Puedes utilizar la instrumentación personalizada al incrustar código de rastreo directamente en el código de tu aplicación. Esto te permite crear, modificar o eliminar mediante programación trazas para enviarlas a Datadog.

Para saber más, lee Instrumentación de aplicación.

Leer más

PREVIEWING: mervebolat/span-id-preprocessing