Captura un registro del sistema en un dispositivo

Los dispositivos que ejecutan Android 9 (nivel de API 28) o versiones posteriores incluyen una app a nivel del sistema llamada Registro del sistema. Esta app es similar a la utilidad de línea de comandos de systrace, pero te permite capturar registros directamente desde un dispositivo de prueba, sin necesidad de conectar el dispositivo con ADB. Luego, puedes usar la app para compartir los resultados de estos registros con tu equipo de desarrollo.

Los dispositivos que ejecutan Android 10 y versiones posteriores realizan registros en formato Perfetto, mientras que los dispositivos anteriores lo hacen en formato Systrace. Te recomendamos que uses el lector de seguimiento de Perfetto para abrir ambos formatos y luego analizar los seguimientos.

Es útil para registrar seguimientos cuando abordas errores relacionados con el rendimiento en tu app, como tiempos de inicio y transiciones lentos o bloqueos de IU.

Cómo registrar un seguimiento del sistema

La app Registro del sistema te permite capturar un registro del sistema con la tarjeta de Configuración rápida o un menú dentro de la propia app. En las siguientes secciones, se describe cómo completar el proceso de registro usando estas interfaces.

Cómo capturar registros con la tarjeta de Configuración rápida

Por lo general, la tarjeta de Configuración rápida es la manera más conveniente de completar el proceso de registro del sistema en el dispositivo.

Cómo configurar la tarjeta

Si usas Registro del sistema por primera vez en tu dispositivo de prueba o si no ves la tarjeta de Registro del sistema en el panel de Configuración rápida de tu dispositivo (Figura 1), completa los siguientes pasos de configuración:

  1. Habilita las opciones para desarrolladores.
  2. Abre la pantalla de configuración Opciones para desarrolladores.
  3. En la sección Depuración, selecciona Registro del sistema. Se abrirá la app de Registro del sistema y se mostrará el menú de la app.
  4. Desde el menú de la app, habilita la opción de Mostrar la tarjeta de Configuración rápida, como se muestra en la figura 1. El sistema agregará la tarjeta de Registro del sistema al panel de Configuración rápida, como se muestra en la figura 2:

    Figura 1: El interruptor de Mostrar la tarjeta de Configuración rápida en la app de Registro del sistema.
    Figura 2: Tarjeta de Registro del sistema en el panel de Configuración rápida

    Nota: De manera predeterminada, el sistema agrega la tarjeta de Registro del sistema como primera tarjeta en el panel de Configuración rápida. Si quieres que la tarjeta se muestre en una posición diferente, usa el modo de edición del panel para mover la tarjeta.

Cómo completar el registro de un seguimiento del sistema

Para capturar un registro del sistema con el panel de Configuración rápida, completa los siguientes pasos:

  1. Presiona la tarjeta de Registro del sistema, en la que se muestra la etiqueta Registrar seguimiento. Se habilitará la tarjeta y aparecerá una notificación persistente para informarte que el sistema ahora está capturando un registro, como se muestra en la figura 3:

    Notificación con el mensaje "Se están registrando seguimientos. Presiona para detener el registro".
    Figura 3: Notificación persistente que se muestra después de iniciar un registro del sistema en el dispositivo
  2. Realiza en tu app las acciones que quieras que el sistema inspeccione.

  3. Para detener el seguimiento, presiona la tarjeta de Registro del sistema en el panel de Configuración rápida o en la notificación de Registro del sistema.

    El sistema mostrará una notificación nueva con el mensaje "Guardando seguimiento". Cuando se termine de guardar, el sistema descartará la notificación y mostrará una tercera notificación, que confirma que se guardó el registro y que ya puedes compartir el registro del sistema, como se muestra en la figura 4:

    Notificación con el mensaje "Se guardó el seguimiento. Toca para compartir el seguimiento".
    Figura 4: Notificación persistente que se muestra una vez que el sistema termina de guardar un registro capturado

Cómo registrar un seguimiento usando el menú de la app

El menú de la app te permite definir varias opciones de configuración avanzada relacionadas con el registro del sistema y proporciona un interruptor para iniciar y detener ese registro.

Si deseas capturar un registro del sistema con el menú de la app de Registro del sistema, completa los siguientes pasos:

  1. Habilita las opciones para desarrolladores.
  2. Abre la pantalla de configuración Opciones para desarrolladores. En la sección Depuración, selecciona Registro del sistema. Se abrirá la app Registro del sistema.

    Como alternativa, si configuras la tarjeta de Registro del sistema, puedes mantenerla presionada para ingresar a la app de Registro del sistema.

  3. Asegúrate de que esté seleccionada la opción Registrar aplicaciones depurables para incluir aplicaciones que tengan habilitada la depuración en el registro del sistema.

  4. De manera alternativa, elige las Categorías de llamadas del sistema y del sensor que quieras registrar, y selecciona un Tamaño del búfer por cada CPU (en KB). Elige las categorías que correspondan al caso de uso que estés probando, como la categoría Audio para probar las operaciones de Bluetooth o la categoría Memoria para las asignaciones de montón.

  5. De manera opcional, selecciona Registros largos para habilitar los registros que se guardan de forma continua en el almacenamiento del dispositivo. En esta opción, establece límites para el Tamaño máximo del registro largo y la Máxima duración del registro largo.

  6. Habilita el interruptor Registrar seguimiento, destacado en la figura 5. Se habilitará la tarjeta y aparecerá una notificación persistente para informarte que el sistema ahora está capturando un registro, como se muestra en la figura 3:

    Figura 5: Interruptor Registrar seguimiento en la configuración de Registro del sistema
  7. Realiza en tu app las acciones que quieras que el sistema inspeccione.

  8. Para detener el seguimiento, inhabilita el interruptor Registrar seguimiento.

    El sistema mostrará una notificación nueva con el mensaje "Guardando seguimiento". Cuando se termina de guardar, el sistema descarta la notificación y muestra una tercera notificación, que confirma que se guardó el registro y que ya puedes compartir el registro del sistema, como se muestra en la figura 4.

Cómo compartir un seguimiento del sistema

La app de Registro del sistema te ayuda a compartir los resultados del registro del sistema como parte de varios flujos de trabajo diferentes. En un dispositivo que ejecuta Android 10 (nivel de API 29) o una versión posterior, se guardan los archivos de registro con la extensión de nombre .perfetto-trace y se pueden abrir en la IU de Perfetto. En un dispositivo que ejecuta una versión anterior de Android, estos archivos se guardan con la extensión de nombre de archivo .ctrace, que denota el formato Systrace.

Cómo compartir como mensaje

Registro del sistema te permite compartir el registro que recopilaste con otras apps en tu dispositivo. Al hacerlo, puedes enviar el registro a tu equipo de desarrollo por correo electrónico o por una app de seguimiento de errores sin necesidad de conectar un dispositivo a tu máquina de desarrollo.

Después de capturar un registro del sistema, presiona la notificación que aparece en el dispositivo, como la que se muestra en la figura 4. Aparecerá el selector de intents de la plataforma, que te permitirá compartir el registro a través de la app de mensajería que elijas.

Cómo compartir desde la app de Archivos

En los dispositivos que ejecutan Android 10 (nivel de API 29) o versiones posteriores, los seguimientos se muestran en la app de Archivos. Puedes compartir un registro desde esta app.

Cómo descargar un informe con ADB

También puedes extraer un registro del sistema de un dispositivo con adb. Conecta el dispositivo que se usó para registrar el registro en tu máquina de desarrollo y luego ejecuta los siguientes comandos en una ventana de terminal:

cd /path-to-traces-on-my-dev-machine && \
  adb pull /data/local/traces/ .

Cómo convertir archivos a otros formatos de registro

Puedes convertir archivos de registro de Perfetto al formato Systrace. Consulta Cómo convertir archivos a otros formatos de registro para obtener más información.

Cómo crear un informe HTML

Cuando compartes el registro, el informe reside en un archivo .perfetto-trace (en dispositivos que ejecutan Android 10 o versiones posteriores) o en un archivo .ctrace (para todas las demás versiones).

Crea un informe HTML a partir del archivo de registro con una IU basada en la Web o desde la línea de comandos.

IU basada en la Web

Usa la IU de Perfetto para abrir el archivo de registro y generar el informe.

Para un archivo de Perfetto, haz clic en Open trace file. En el caso de un archivo Systrace, haz clic en Open with legacy UI. La IU heredada tiene el mismo aspecto que el informe de Systrace.

Línea de comandos

Ejecuta los siguientes comandos en una ventana de terminal para generar un informe HTML a partir del archivo de registro:

cd /path-to-traces-on-my-dev-machine && \
  systrace --from-file trace-file-name{.ctrace | .perfetto-trace}

Si aún no tienes el programa de línea de comandos systrace, puedes descargarlo desde el proyecto Catapult en GitHub o directamente desde el Proyecto de código abierto de Android.