Casos de éxito
Datadog ofrece millones de estadísticas de rendimiento detalladas con ProfilingManager
Lectura de 4 min
Las regresiones de rendimiento son notoriamente difíciles de reproducir, lo que las convierte en un cuello de botella enorme para los desarrolladores de dispositivos móviles. Si bien los indicadores como las tasas de ANR indican qué problemas ocurren en la producción, identificar la línea de código específica que provocó el problema de rendimiento históricamente requirió una reproducción manual exhaustiva o una experimentación especulativa de prueba y error.
Datadog colaboró con Google para mitigar esta frustración integrando la API de ProfilingManager (disponible en dispositivos con Android 15 o versiones posteriores) en sus plataformas de Supervisión de usuarios reales (RUM) y Generación de perfiles continua. Esta integración transforma el flujo de trabajo de depuración, lo que permite a los desarrolladores ir más allá de los síntomas superficiales para poder detectar el por qué detrás de un cuello de botella de rendimiento.
Al aprovechar esta API a nivel del sistema, Datadog ahora procesa millones de perfiles de producción por semana en todo el mundo, según los datos internos de Datadog de junio de 2026. Proporciona a los equipos de ingeniería un nuevo nivel de visibilidad del rendimiento en el mundo real, al mismo tiempo que mantiene una sobrecarga de tiempo de ejecución baja para la supervisión del rendimiento a escala de producción.
El impacto de ProfilingManager
ProfilingManager es un servicio del sistema que se introdujo en Android 15 y que permite que las apps recopilen datos de rendimiento de forma programática, como muestras de pila de llamadas, seguimientos de campos y volcados de montón de memoria directamente desde entornos de producción. Esta capacidad cambia el paradigma de ingeniería de la reproducción manual reactiva al análisis de campo proactivo.
Por ejemplo, una app de comunicaciones de Google usó seguimientos de campos para investigar por qué sus tiempos de inicio en frío eran más lentos en hardware más nuevo y potente. Al analizar los seguimientos recopilados en el campo y compararlos en diferentes tipos de dispositivos, el ingeniero descubrió un problema de programación oculto: un servicio de texto a voz en segundo plano se precalentaba innecesariamente durante el inicio de la app. Los seguimientos revelaron que este proceso en segundo plano monopolizaba el núcleo de CPU grande de mayor rendimiento del dispositivo, lo que obligaba al subproceso principal de la app a suspenderse mientras se producía el precalentamiento.
Cómo resolver el desafío de visibilidad a nivel de código de Android
Antes de la implementación de ProfilingManager, la Supervisión de usuarios reales (RUM) de Datadog se centraba en el estado de la aplicación de alto nivel y la telemetría a nivel de la sesión para evaluar el recorrido del usuario. Los equipos de ingeniería podían supervisar los indicadores de rendimiento de Android, como el tiempo hasta la visualización inicial, las tasas de ANR, la carga de CPU y los fotogramas congelados. Estas estadísticas se extendieron a interacciones detalladas, como la latencia de la red, los eventos táctiles y las suspensiones del subproceso principal. Sin embargo, si bien estos datos destacaron de manera eficaz qué cuellos de botella de rendimiento aparecían en el campo, no proporcionaron una ruta clara para identificar la causa raíz de estas fallas.
Para abordar este problema, Datadog necesitaba un motor de generación de perfiles capaz de capturar seguimientos de Android directamente desde dispositivos en producción con un impacto mínimo en el rendimiento. Después de evaluar enfoques alternativos, como escribir su propio procesador de seguimientos con las APIs de depuración de Android, el equipo seleccionó ProfilingManager porque es la solución de generación de perfiles más eficaz de las opciones que evaluaron y descarga la sobrecarga de decisiones de muestreo en el SO.
ProfilingManager admite una amplia variedad de métodos de recopilación, incluidos los seguimientos de CPU, el muestreo de pila de llamadas y el análisis de memoria a través de volcados de montón de Java y perfiles de montón nativos. Permite a los desarrolladores generar perfiles de compilaciones de producción, subir archivos de seguimiento al almacenamiento externo y revisarlos en la IU del analizador de seguimientos de Perfetto. Como proveedor de SaaS, Datadog sube, visualiza y analiza estos perfiles recopilados a través de su SDK, lo que proporciona una vista unificada del estado de la aplicación.
Al centralizar la telemetría de alta fidelidad dentro de una API de observabilidad unificada, ProfilingManager permite a Datadog y a sus clientes supervisar, investigar y corregir de forma proactiva las regresiones complejas de rendimiento de Android a través de ventajas técnicas clave:
- Diagnóstico detallado de la sesión: ProfilingManager mejora la capacidad de depuración mediante la entrega de datos de seguimiento directos a nivel del SO, lo que supera los desafíos de visibilidad y alineación típicos del registro personalizado con servicios del sistema. Para obtener más información, los desarrolladores pueden descargar estos seguimientos de Datadog para investigar más a fondo en herramientas de visualización como la IU de Perfetto.
- Activadores de telemetría automatizados: Al aprovechar los eventos nativos del sistema para iniciar grabaciones de seguimiento en puntos clave de optimización, Datadog reduce la necesidad de compilar lógica de recopilación personalizada. Si bien el lanzamiento inicial se centra en el indicador APP_FULLY_DRAWN, ya hay planes para expandir esta observabilidad para incluir activadores ANR, OOM y COLD_START.
- Instantáneas de seguimiento proactivas: Al interactuar directamente con el servicio Perfetto a nivel del sistema (traced), ProfilingManager utiliza un modelo de grabación en segundo plano proactivo diseñado para capturar problemas impredecibles. Esto garantiza que los desarrolladores reciban una visualización precisa de los eventos que conducen a una anomalía de rendimiento, lo que ofrece un nivel de estadísticas que supera lo que es posible a través de la instrumentación manual.
- Detección de cuellos de botella a gran escala: Datadog puede sintetizar la telemetría de toda la base de clientes global de Datadog para descubrir regresiones que solo surgen en configuraciones de hardware únicas y entornos de red variables.
- Estabilidad de recursos forzada por el sistema: La API aprovecha la recopilación de seguimientos de muestreo para garantizar que los impactos en el rendimiento y la experiencia del usuario permanezcan imperceptibles.
- Controles de datos integrados en el dispositivo: ProfilingManager filtra la información irrelevante de otros procesos integrados en el dispositivo antes de que se entregue el perfil a la app. Esto minimiza los tamaños de los archivos y garantiza que solo se proporcionen los datos relevantes para los procesos de la app.
Procesamiento de millones de perfiles semanales para optimizar apps del mundo real
La integración de una API de generación de perfiles a nivel del sistema en un SDK de supervisión global requirió resolver desafíos de infraestructura. Debido a que ProfilingManager genera seguimientos de rendimiento muy detallados, el equipo de ingeniería de Datadog tuvo que compilar una canalización capaz de analizar y analizar estos perfiles en el servidor a gran escala. Además de la recopilación de perfiles, Datadog también enfatiza la importancia de equilibrar la frecuencia de muestreo con la recopilación de datos suficientes para generar estadísticas significativas sobre tu aplicación. Datadog se basa en la limitación de frecuencia integrada de ProfilingManager como una protección de estabilidad fundamental, lo que evita que las solicitudes de telemetría excesivas sobrecarguen los dispositivos de los usuarios.
El equipo ha estado generando perfiles de la propia aplicación nativa para Android de Datadog y de varias aplicaciones de los primeros usuarios durante meses, recopilando millones de perfiles para garantizar una experiencia de lanzamiento rápida y sin errores, y para refinar sus algoritmos de detección de rendimiento. Hoy en día, la integración de producción se adapta sin problemas a una variedad de dispositivos Android.
Conclusión
Al integrar la API de ProfilingManager de Android, Datadog cerró con éxito la brecha de visibilidad entre los sistemas de backend y las aplicaciones cliente para dispositivos móviles de sus clientes. Al procesar millones de perfiles por semana con una sobrecarga de dispositivos insignificante, Datadog proporciona a los desarrolladores de Android las estadísticas a nivel de código necesarias para diagnosticar errores de rendimiento complejos al instante, lo que los ayuda a compilar aplicaciones más fluidas y a mejorar los indicadores de rendimiento de su app en Play Store. Para adoptar la API de ProfilingManager directamente en tu framework de observabilidad del rendimiento, consulta nuestra documentación.
En el futuro, Datadog tiene como objetivo convertir los datos de generación de perfiles de Android en una entrada de primera clase para que los agentes de codificación resuelvan de forma autónoma los cuellos de botella de rendimiento, lo que cierra el ciclo de retroalimentación entre la detección y la corrección. Datadog está trabajando para que la generación de perfiles de Android sea ampliamente accesible para los desarrolladores.
Para comenzar a usar la función de supervisión de usuarios reales de Datadog con tecnología de ProfilingManager, visita Supervisión de usuarios reales de Datadog para dispositivos móviles.
Seguir leyendo
-
Casos de éxito
Karrot es una app de mercado de persona a persona hiperlocal y basada en la comunidad que permite a los usuarios comprar, vender e intercambiar artículos con otros usuarios verificados. Desde su lanzamiento en Corea del Sur en 2015, la plataforma se expandió a los mercados globales y acumuló más de 43 millones de usuarios registrados.
Thomas Ezan, Tracy Agyemang • Lectura de 2 min
-
Cómo hacer
Si bien el rendimiento de la app suele equipararse con una IU fluida y tiempos de inicio rápidos, la memoria sirve como la base silenciosa sobre la que se compilan estas métricas visibles. No es un secreto que estamos viendo un cambio en el que la memoria del dispositivo es más importante que nunca.
Alice Yuan, Ajesh Pai, Fung Lam • Lectura de 10 min
-
Casos de éxito
Recientemente, FotMob experimentó su mayor aumento en un solo día en Wear OS entre su público instalado en 5 años, con un promedio diario de 2 a 3 veces. ¿El secreto? Un flujo de instalación simple multidispositivo que ayuda a los usuarios a descubrir su app para Wear OS directamente desde su teléfono.
Garan Jenkin • Lectura de 3 min
Mantente al día
Recibe la información más reciente sobre el desarrollo de Android en tu bandeja de entrada todas las semanas.