Preguntas frecuentes y resolución de problemas de supervisión del rendimiento
Organízate con las colecciones
Guarda y clasifica el contenido según tus preferencias.
Esta página proporciona sugerencias de solución de problemas para comenzar con Performance Monitoring o utilizar las funciones y herramientas de Performance Monitoring.
Primeras comprobaciones para solucionar problemas
Las siguientes dos comprobaciones son las mejores prácticas generales recomendadas para cualquier persona antes de seguir solucionando problemas.
1. Verifique los mensajes de registro para detectar eventos de rendimiento
Verifique sus mensajes de registro para asegurarse de que el SDK de Performance Monitoring esté capturando eventos de rendimiento.
Cómo ver mensajes de registro para eventos de rendimiento
Habilite el registro de depuración, de la siguiente manera:
Consulte el Panel de estado de Firebase en caso de que haya una interrupción conocida de Firebase o de Monitoreo de rendimiento.
Primeros pasos con la supervisión del rendimiento
Si está comenzando con el Monitoreo de rendimiento ( iOS+ | Android | Web ), los siguientes consejos para la solución de problemas pueden ayudarlo con problemas que involucran que Firebase detecte el SDK o muestre sus primeros datos de rendimiento en Firebase console.
Se agregó el SDK a la aplicación, pero la consola aún dice que se agregue el SDK
Firebase puede detectar si agregaste correctamente el SDK de monitoreo de rendimiento a tu aplicación cuando recibe información de eventos (como interacciones de la aplicación) de tu aplicación. Por lo general, dentro de los 10 minutos posteriores al inicio de su aplicación, el panel de rendimiento de Firebase console muestra un mensaje "SDK detectado". Luego, en 30 minutos, el panel muestra los datos procesados iniciales.
Si han pasado más de 10 minutos desde que agregó la última versión del SDK a su aplicación y aún no ve ningún cambio, verifique sus mensajes de registro para asegurarse de que Performance Monitoring esté registrando eventos. Pruebe los pasos de solución de problemas apropiados como se describe a continuación para solucionar un mensaje de detección retrasada del SDK.
La aplicación está registrando eventos: pasos para solucionar problemas
Si todavía estás desarrollando localmente, intenta generar más eventos para la recopilación de datos:
Continúe desarrollando su aplicación utilizando un simulador o dispositivo de prueba.
Genere eventos cambiando su aplicación entre fondo y primer plano varias veces, interactuando con su aplicación navegando entre pantallas y/o activando solicitudes de red.
Asegúrese de que su archivo de configuración de Firebase ( Google-Service-Info.plist ) esté agregado correctamente a su aplicación y que no haya modificado el archivo. Específicamente, verifique lo siguiente:
Al nombre del archivo de configuración no se le añaden caracteres adicionales, como (2) .
El archivo de configuración está en la raíz de su proyecto XCode y se agrega a los destinos correctos.
El ID de la aplicación Firebase Apple ( GOOGLE_APP_ID ) que figura en el archivo de configuración es correcto para su aplicación. Busque el ID de su aplicación Firebase en la tarjeta Sus aplicaciones de su settingsConfiguración del proyecto .
Si hay algún problema con el archivo de configuración de su aplicación, intente lo siguiente:
Elimine el archivo de configuración que tiene actualmente en su aplicación.
Siga estas instrucciones para descargar un nuevo archivo de configuración y agregarlo a su aplicación Apple.
Si el SDK está registrando eventos y todo parece estar configurado correctamente, pero aún no ves el mensaje de detección del SDK ni los datos procesados (después de 2 horas), comunícate con el soporte de Firebase .
La aplicación no registra eventos: pasos para solucionar problemas
Si agregó correctamente el SDK y está utilizando Performance Monitoring en su aplicación, los siguientes consejos de solución de problemas pueden ayudarle con problemas generales que involucran funciones y herramientas de Performance Monitoring.
Al panel de rendimiento le faltan datos de seguimiento de pantalla
Si faltan datos para los seguimientos de representación de pantalla, intente los siguientes pasos de solución de problemas:
Al panel de rendimiento le faltan datos de seguimiento personalizados
¿Está viendo datos de rendimiento para los seguimientos recopilados automáticamente pero no para los seguimientos de código personalizado ? Pruebe los siguientes pasos de solución de problemas:
Verifique la configuración de seguimientos de código personalizado instrumentados a través de Trace API , especialmente los siguientes:
Los nombres para seguimientos de código personalizados y métricas personalizadas deben cumplir los siguientes requisitos: sin espacios en blanco al principio ni al final, sin carácter de guión bajo ( _ ) al inicio y una longitud máxima de 32 caracteres.
Todos los rastreos deben iniciarse y detenerse. Cualquier seguimiento que no se inicie, no se detenga o se detenga antes de iniciarse no se registrará.
Verifique sus mensajes de registro para asegurarse de que Performance Monitoring registre los seguimientos de código personalizado esperados.
Dependiendo del comportamiento de su código y de las bibliotecas de red utilizadas por su código, es posible que Performance Monitoring solo informe sobre las solicitudes de red que se completan. Esto significa que es posible que no se informen las conexiones HTTP/S que se dejan abiertas.
Performance Monitoring no informa sobre solicitudes de red con encabezados Content-Type no válidos. Sin embargo, se seguirán aceptando solicitudes de red sin encabezados Content-Type .
Los datos de solicitud de red no se agregan como se esperaba
¿Qué pasó con los problemas principales en la tarjeta de rendimiento en la página principal del proyecto?
Reemplazamos los problemas principales con alertas recientes como seguimiento de nuestra reciente introducción de alertas, que le notifican automáticamente cuando se cruzan los umbrales que establezca. Los problemas ahora están obsoletos y reemplazados por alertas.
El selector de aplicaciones en la parte superior de la tarjeta Rendimiento filtra las entradas de alerta en Alertas recientes . Solo se muestran las tres alertas más recientes para las aplicaciones seleccionadas.
¿Qué pasó con la capacidad de establecer umbrales para problemas en la consola?
Performance Monitoring admite alertas para métricas que superan los umbrales definidos. Para evitar confusión con estos umbrales configurables para métricas de rendimiento, eliminamos la capacidad de configurar umbrales para problemas .
¿Qué pasó con la información de Detalles y Métricas en Firebase console?
Reemplazamos las páginas de Detalles y Métricas con una interfaz de usuario (UI) centralizada y recientemente rediseñada para mejorar la forma de solucionar problemas. Esta nueva interfaz de usuario de solución de problemas ofrece la misma funcionalidad principal que ofrecían Detalles y Métricas. Para obtener más información sobre la solución de problemas, consulte Ver más datos para un seguimiento específico .
¿Por qué la cantidad de muestras no es la que esperaba?
Performance Monitoring recopila datos de rendimiento de los dispositivos de usuario de su aplicación. Si su aplicación tiene muchos usuarios o si la aplicación genera una gran cantidad de actividad de rendimiento, Performance Monitoring podría limitar la recopilación de datos a un subconjunto de dispositivos para reducir la cantidad de eventos procesados. Estos límites son lo suficientemente altos como para que, incluso con menos eventos, los valores de las métricas sigan siendo representativos de la experiencia de la aplicación del usuario.
Para gestionar el volumen de datos que recopilamos, Performance Monitoring utiliza las siguientes opciones de muestreo:
Limitación de velocidad en el dispositivo : para evitar que un dispositivo envíe ráfagas repentinas de rastreos, limitamos la cantidad de rastreos de código y solicitudes de red enviados desde un dispositivo a 300 eventos cada 10 minutos. Este enfoque protege el dispositivo de instrumentaciones en bucle que pueden enviar grandes cantidades de datos de rendimiento y evita que un solo dispositivo distorsione las mediciones de rendimiento.
Muestreo dinámico : Performance Monitoring recopila un límite de aproximadamente 100 millones de eventos para seguimientos de código y 100 millones para seguimientos de solicitudes de red por aplicación diariamente entre todos los usuarios de la aplicación. Se obtiene una frecuencia de muestreo dinámica en los dispositivos (mediante Firebase Remote Config) para determinar si un dispositivo aleatorio debe capturar y enviar seguimientos. Un dispositivo que no está seleccionado para el muestreo no envía ningún evento. La frecuencia de muestreo dinámico es específica de la aplicación y se ajusta para garantizar que el volumen general de datos recopilados permanezca por debajo del límite.
Las sesiones de usuario envían datos adicionales y detallados desde el dispositivo de un usuario, lo que requiere más recursos para capturar y enviar los datos. Para minimizar el impacto de las sesiones de usuario, Performance Monitoring también puede restringir el número de sesiones.
Limitación de velocidad del lado del servidor : para garantizar que las aplicaciones no superen el límite de muestreo, Performance Monitoring puede utilizar el muestreo del lado del servidor para descartar algunos eventos recibidos de los dispositivos. Aunque este tipo de limitación no cambia la eficacia de nuestras métricas, puede provocar cambios menores en los patrones, incluidos los siguientes:
La cantidad de seguimientos puede diferir de la cantidad de veces que se ejecutó un fragmento de código.
Las trazas que están estrechamente acopladas en el código pueden tener cada una un número diferente de muestras.
¿Qué pasó con la pestaña Problemas en la consola?
Reemplazamos la pestaña Problemas con la introducción de Alertas, que le notifica automáticamente cuando se exceden los umbrales que establezca. Ya no es necesario verificar manualmente Firebase console para determinar el estado de un umbral. Para obtener información sobre las alertas, consulte Configurar alertas para problemas de rendimiento .
¿Qué pasó con las pestañas En dispositivo y Red en la consola? ¿Cómo veo los rastros que había en esas páginas?
Rediseñamos la sección Monitoreo de rendimiento de Firebase console para que la pestaña Panel muestre sus métricas clave y todos sus seguimientos en un solo espacio. Como parte del rediseño, eliminamos las páginas En el dispositivo y Red .
La tabla de seguimientos en la parte inferior de la pestaña Panel tiene la misma información que las pestañas En el dispositivo y Red , pero con algunas características adicionales, incluida la capacidad de ordenar sus seguimientos por el cambio porcentual para una métrica específica. Para ver todas las métricas y datos de un seguimiento específico, haga clic en el nombre del seguimiento en la tabla de seguimientos.
Vea sus seguimientos en las siguientes subpestañas de la tabla de seguimientos:
Seguimientos de solicitudes de red (tanto listos para usar como personalizados): subpestaña Solicitudes de red
Seguimientos de código personalizados: subpestaña Seguimientos personalizados
Inicio de la aplicación, seguimiento de la aplicación en primer plano y seguimiento de la aplicación en segundo plano: subpestaña Seguimientos personalizados
Seguimientos de representación de pantalla: subpestaña Representación de pantalla
Seguimientos de carga de página: subpestaña Carga de página
Para obtener detalles sobre la tabla de seguimientos y la visualización de métricas y datos, visite la página de descripción general de la consola ( iOS+ | Android | Web ).
¿Por qué la cantidad de fotogramas lentos y congelados no es la que esperaba?
Los fotogramas de renderizado lento y los fotogramas congelados se calculan con una frecuencia de actualización del dispositivo supuesta de 60 Hz. Si la frecuencia de actualización de un dispositivo es inferior a 60 Hz, cada fotograma tendrá un tiempo de renderizado más lento porque se renderizan menos fotogramas por segundo. Los tiempos de renderizado más lentos pueden hacer que se informen más fotogramas lentos o congelados porque más fotogramas se renderizarán más lento o se congelarán. Sin embargo, si la frecuencia de actualización de un dispositivo es superior a 60 Hz, cada cuadro tendrá un tiempo de renderizado más rápido. Esto puede provocar que se informen menos fotogramas lentos o congelados. Esta es una limitación actual en el SDK de Performance Monitoring.
Mis datos de Performance Monitoring están tardando más de lo esperado en exportarse a BigQuery. ¿No es tiempo real?
Si ha habilitado la integración de BigQuery para Firebase Performance Monitoring, sus datos se exportarán a BigQuery entre 12 y 24 horas después del final del día (hora del Pacífico).
Por ejemplo, los datos del 19 de abril estarán disponibles en BigQuery el 20 de abril entre las 12:00 p. m. y la medianoche (todas las fechas y horas son hora del Pacífico).
Procesamiento y pantalla de datos casi en tiempo real
¿Qué significan los datos de rendimiento "casi en tiempo real"?
Los procesos de monitoreo de rendimiento de Firebase recopilaron datos de rendimiento a medida que se produce, lo que da como resultado una visualización de datos casi en tiempo real en la consola Firebase. Los datos procesados se muestran en la consola a los pocos minutos de su recopilación, de ahí el término "casi en tiempo real".
¿Cómo me acerco a los datos de rendimiento en tiempo real para mi aplicación?
Para aprovechar el procesamiento de datos casi en tiempo real, solo debe asegurarse de que su aplicación use una versión SDK de monitoreo de rendimiento que sea compatible con el procesamiento de datos en tiempo real.
Estas son las versiones SDK compatibles en tiempo real:
iOS - V7.3.0 o posterior
tvOS - v8.9.0 o posterior
Android - V19.0.10 o posterior (o Firebase Android Bom V26.1.0 o posterior)
Web - V7.14.0 o posterior
Tenga en cuenta que siempre recomendamos usar la última versión de SDK, pero cualquier versión enumerada anteriormente habilitará el monitoreo del rendimiento para procesar sus datos en tiempo casi real.
¿Qué versiones del SDK de monitoreo de rendimiento se consideran compatibles en tiempo real?
Estas son las versiones SDK compatibles con el procesamiento de datos en tiempo real:
iOS - V7.3.0 o posterior
tvOS - v8.9.0 o posterior
Android - V19.0.10 o posterior (o Firebase Android Bom V26.1.0 o posterior)
Web - V7.14.0 o posterior
Tenga en cuenta que siempre recomendamos usar la última versión de SDK, pero cualquier versión enumerada anteriormente habilitará el monitoreo del rendimiento para procesar sus datos en tiempo casi real.
¿Qué pasa si no actualizo mi aplicación para usar una versión SDK compatible en tiempo real?
Si su aplicación no usa una versión SDK compatible en tiempo real, aún verá todos los datos de rendimiento de su aplicación en la consola Firebase. Sin embargo, la visualización de datos de rendimiento se retrasará aproximadamente 36 horas desde el momento de su recopilación.
He actualizado a una versión SDK compatible en tiempo real, pero algunos de mis usuarios todavía están en versiones antiguas de mi aplicación. ¿Sigo viendo sus datos de rendimiento en la consola Firebase?
¡Sí! Independientemente de qué versión SDK use una instancia de aplicación, verá datos de rendimiento de todos sus usuarios.
Sin embargo, si está viendo datos recientes (menos de aproximadamente 36 horas), entonces los datos mostrados son de usuarios de instancias de aplicaciones utilizando una versión SDK compatible en tiempo real. Sin embargo, los datos no recientes incluyen datos de rendimiento de todas las versiones de su aplicación.
[[["Es fácil de entender","easyToUnderstand","thumb-up"],["Me ofreció una solución al problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Me falta la información que necesito","missingTheInformationINeed","thumb-down"],["Es demasiado complicado o hay demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Está obsoleto","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema de muestras o código","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2024-03-22 (UTC)."],[],[]]