Join the Preview
Live Debugger está en Vista previa limitada. Solicita acceso para unirte a la fila de espera.
Para enviar preguntas, comentarios o solicitudes relacionadas con Live Debugger, rellena este formulario con la información.
En caso de problemas cronológicamente sensibles, ponte en contacto con el servicio de asistencia de Datadog.
Request AccessCon Live Debugger, puedes depurar aplicaciones en ejecución en tiempo real, sin volver a desplegar el código ni interrumpir el servicio. Con la tecnología de Dynamic Instrumentation de Datadog, Live Debugger utiliza puntos de registro de caducidad automática, “puntos de interrupción no rompibles” para recopilar información de las aplicaciones en ejecución sin detener la ejecución. Esto lo vuelve ideal para investigar problemas en entornos donde los métodos tradicionales de depuración no son prácticos.
Capacidades clave
Live Debugger proporciona:
- Inspección en tiempo real de estados de variables, argumentos de métodos y rutas de ejecución en código en ejecución.
- Recopilación de datos no invasiva que captura información de depuración sin detener las aplicaciones ni degradar el rendimiento.
- Instrumentación de código con puntos de registro que pueden añadirse en cualquier parte de tu código, incluyendo bibliotecas de terceros.
- Puntos de registro de caducidad automática que se desactivan automáticamente después de un tiempo determinado (por defecto: 48 horas).
- Registro condicional basado en criterios definidos por el usuario para capturar datos sólo cuando se cumplen determinadas condiciones.
- Depuración de datos confidenciales integrada para evitar la exposición de información personal, contraseñas y secretos.
Empezando
Requisitos previos
- Se cumplen todos los requisitos previos de Dynamic Instrumentation.
- Has creado un índice de logs para almacenar información de depuración.
- (Recomendado) Has activado la integración del código fuente para ver y seleccionar localizaciones de código específicas al añadir puntos de registro.
Configurar Live Debugger
Activa y desactiva Live Debugger en un servicio utilizando uno de los siguientes métodos:
Activación con un solo clic (recomendado)
Sólo los usuarios con los siguientes permisos pueden utilizar la activación con un clic: Gestión de organización, Lectura de configuración remota de APM, Escritura de configuración remota de APM.
- Selecciona el servicio y el entorno en la página de parámetros de Live Debugger.
- Comprueba que se cumplen todos los requisitos previos indicados en la página de Parámetros.
- Haz clic en “Enable” o “Disable” (Activar o Desactivar):
- En “Enable” (Activar), para permitir a los usuarios crear sesiones de depuración en el servicio y el entorno seleccionados.
- En “Disable” (Desactivar) para desactivar sesiones de depuración activas y evitar que los usuarios creen más.
Nota: No es necesario reiniciar el servicio para que los cambios surtan efecto. Los administradores y los contactos de seguridad reciben notificaciones por correo electrónico cuando se activan o desactivan los servicios.
Activación manual
- Selecciona el servicio y el entorno en la página de parámetros de Live Debugger.
- Sigue las instrucciones para activar Live Debugger.
- Reinicia el servicio antes de utilizar Live Debugger.
Live Debugger y Dynamic Instrumentation
Debido a la tecnología subyacente compartida, Live Debugger y Dynamic Instrumentation siempre se activan o desactivan juntos en el mismo servicio y entorno.
Al igual que Live Debugger, Dynamic Instrumentation permite a los usuarios crear puntos de registro (además de admitir otros instrumentos personalizados como tramos (spans), etiquetas (tags) de tramos y métricas. Sin embargo, los puntos de registro de Live Debugger expiran automáticamente tras un periodo de tiempo determinado, mientras que los de Dynamic Instrumentation permanecen activos hasta que se desactivan manualmente.
Al activar o desactivar Live Debugger, se aplica la misma acción a Dynamic Instrumentation para ese servicio y entorno. Cuando se desactiva, se detiene toda captura de datos, tanto de los puntos de registro de la sesión de depuración activa, como de las instrumentaciones dinámicas.
Uso de Live Debugger
Prueba Live Debugger desde tu IDE JetBrains.
Haz clic aquí para obtener más información.
Creación y uso de una sesión de depuración
Las sesiones de depuración te permiten inspeccionar tu código en tiempo de ejecución con puntos de registro que expiran automáticamente. Para crear y utilizar una sesión de depuración:
- Inicia una sesión de depuración desde una de las siguientes opciones:
- En la página de Live Debugger, haz clic en Create Debug Session (Crear sesión de depuración).
- (Requiere la función Code Origins) En el Explorador de trazas (traces), haz clic en una traza para abrir el panel lateral, busca la sección Code Origins y haz clic en Start Debug Session (Iniciar sesión de depuración).
- Añade el primer punto de registro para iniciar la sesión.
- Añade, elimina y modifica puntos de registro dentro de la sesión.
Las sesiones de depuración caducan automáticamente a las 48 horas. Puedes desactivar y volver a activar manualmente tanto las sesiones como los puntos de registro individuales en cualquier momento.
Creación de puntos de registro
Los puntos de registro son “puntos de interrupción no rompibles” que especifican en qué parte del código capturar información, qué datos incluir y en qué condiciones. Para añadir un punto de registro para depuración:
- Ve a la página de Live Debugger.
- Haz clic en Create Debug Session (Crear sesión de depuración).
- Elige tu servicio y entorno y luego selecciona en qué parte de tu código quieres colocar el primer punto de registro.
- Define una plantilla de mensaje de punto de registro utilizando el lenguaje de expresión de Dynamic Instrumentation.
- (Opcional) Activa “Capturar variables” para recopilar todo el contexto de ejecución (esta función tiene un límite de 1 ejecución por segundo).
- (Opcional) Define una condición para cuando los logs deben emitirse.
Nota: Pueden aplicarse algunas limitaciones dependiendo del lenguaje de ejecución del servicio. Para obtener más información, consulta la documentación específica del lenguaje de tiempo de ejecución.
Protección de datos confidenciales
Los datos de Live Debugger pueden contener información sensible, especialmente cuando se utiliza la opción “Capturar variables”. Para proteger estos datos:
- Utiliza los mecanismos integrados de depuración de datos confidenciales.
- Utiliza Sensitive Data Scanner para identificar y redactar información confidencial basándose en expresiones regulares.
Impacto en el rendimiento y la facturación
Activar Live Debugger y Dynamic Instrumentation en un servicio no activa la captura de datos ni afecta al rendimiento. La captura de datos sólo se produce cuando hay sesiones de depuración o instrumentaciones dinámicas activas en ese servicio.
Impacto en el rendimiento: La instrumentación Datadog basada en el Agent garantiza un impacto mínimo en el rendimiento de la aplicación. La lógica de muestreo, los límites de frecuencia y los presupuestos incorporados evitan la captura desbocada de datos.
Impacto en los precios: Los logs capturados por Datadog se facturan todos de la misma manera, tanto si se generan desde Live Debugger, como si se trata de líneas de generadores de logs en tu código fuente. Con Live Debugger, los puntos de registro caducan automáticamente tras el periodo de tiempo definido, lo que limita la acumulación de datos y los costes innecesarios. Monitoriza tu [página del plan y el uso de Datadog21 para detectar cualquier aumento inesperado al utilizar una nueva función.
Limitaciones
Las siguientes restricciones se aplican al uso y configuración de Live Debugger:
- Soporte de lenguajes: Live Debugger está disponible para los mismos lenguajes de ejecución que Dynamic Instrumentation, incluyendo: Java, Python, .NET, PHP (vista previa), Node.js (vista previa), Ruby (vista previa).
- Ámbito de configuración: Live Debugger y Dynamic Instrumentation se activan o desactivan juntos para el mismo servicio y entorno.
- Límites de frecuencia
- Puntos de registro con captura variable: Limitado a 1 ejecución por segundo.
- Puntos de registro sin captura de variables: Limitado a 5000 ejecuciones por segundo, por instancia de servicio.
- Duración de la sesión: Las sesiones de depuración expiran automáticamente después de 48 horas por defecto.
Referencias adicionales
Más enlaces, artículos y documentación útiles: