Saltar al contenido principal

Configura el monitoreo de rendimiento en Capacitor

Aprende a configurar el monitoreo de rendimiento en tu app con Firebase y Sentry para mejorar la eficiencia y la satisfacción del usuario.

Configurar el monitoreo de rendimiento en Capacitor Capgo ilustración del blog

¿Quieres optimizar el Capacitor rendimiento de tu app? Las herramientas de monitoreo como Firebase y Sentry pueden ayudarte a rastrear crashes, el uso de recursos y los tiempos de respuesta, garantizando una experiencia de usuario más fluida. Aquí tienes un resumen rápido:

  • Por qué monitorear el rendimiento: Identifica crashes, optimiza el uso de recursos y mejora los tiempos de respuesta.
  • Herramientas que usar:
  • Setup Steps:
    • Instala Firebase o Sentry SDK.
    • Configura tu app para rastrear métricas de rendimiento o errores.
    • Usa dashboards para analizar y mejorar el rendimiento de la app.

Comparativa rápida:

Característica Firebase Sentry
Monitoreo en tiempo real Ligero retraso Casi instantáneo
Soporte nativo Android, iOS Android, iOS, Web
Métricas personalizadas Básico Flexible
Complejidad de integración Workflows basados en Google Configuración sencilla de SDK

Para Live Update, integra herramientas como Capgo para publicar fixes al instante sin esperar a las app stores. Empieza a monitorizar hoy para mejorar la eficiencia de tu app y la satisfacción de tus usuarios.

Optimiza la salud de tu app con Firebase Monitoreo de rendimiento …

Dashboard de Firebase Platform

Selecciona una herramienta de monitoreo

Elige una herramienta de monitoreo que se adapte a los requisitos de tu app y a la experiencia de tu equipo. Aquí tienes una comparación entre Firebase Performance Monitoring y Sentry para ayudarte a decidir.

Comparativa de herramientas

Característica Firebase Performance Monitoring Sentry
Modelo de precios Plan gratuito con opciones de pago escalables Plan gratuito con planes de crecimiento asequibles
Monitoreo en tiempo real Métricas de rendimiento con ligero retraso Monitoreo casi instantáneo
Soporte de plataforma nativa Android e iOS Android, iOS y web
Complejidad de integración Compatible con servicios de Google Configuración sencilla de SDK
Seguimiento de eventos personalizados Métricas personalizadas básicas Seguimiento flexible de eventos personalizados
Periodo de retención Limitado en el plan gratuito Ampliado en todos los planes

Criterios de selección

Al elegir entre estas herramientas, considera lo siguiente:

  • Tamaño de la app y tráfico: Para apps con crecimiento rápido, Firebase es una opción sólida. Sentry puede ser mejor para implementaciones a menor escala.
  • Requisitos técnicos: Firebase requiere Google Play Services, lo que lo hace ideal para apps en ese ecosistema. Sentry funciona de forma independiente, ofreciendo más flexibilidad entre plataformas.
  • Experiencia del equipo: Firebase encaja bien con equipos que ya usan herramientas de Google, mientras que la configuración SDK de Sentry es más sencilla para casos de uso más amplios.
  • Restricciones de presupuesto: Ambas herramientas ofrecen planes gratuitos, pero compara los costes de escalar funciones para asegurarte de que encajan en tu presupuesto.
  • Objetivos de integraciónFirebase se integra perfectamente con los flujos de trabajo de Google, mientras que Sentry destaca especialmente en el seguimiento de errores.
  • Requisitos normativos: Asegúrate de que la herramienta cumpla con estándares como RGPD, sobre todo si tu app maneja datos de usuario sensibles.
  • Frecuencia de actualizaciones: Si las actualizaciones frecuentes son críticas, herramientas como Capgo pueden acelerar los fixes en vivo, complementando tu configuración de monitoreo.

Guía de configuración de Firebase

Configurar Firebase Performance Monitoring en tu App Capacitor requiere unos pocos pasos claros para garantizar un seguimiento de datos preciso.

Instala Firebase SDK

Comienza añadiendo Firebase SDK a tu proyecto y configúralo para tu(s) plataforma(s):

  • Instalar dependencias de Firebase

Ejecuta los siguientes comandos para instalar los paquetes de Firebase necesarios. Consulta las @capgo/capacitor-firebase-performance y @capgo/capacitor-firebase-crashlytics plugin pages for full setup details:

npm install @capgo/capacitor-firebase-performance
npm install firebase
  • Inicializar Firebase

Configura Firebase en tu archivo principal de la aplicación:

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
import { initializeApp } from 'firebase/app';

const firebaseConfig = {
  // Add your Firebase configuration object here
};

initializeApp(firebaseConfig);
await FirebasePerformance.initializePerformance();
  • Añadir configuraciones de plataforma

Actualiza tu capacitor.config.json archivo para habilitar el monitoreo de rendimiento:

{
  "plugins": {
    "FirebasePerformance": {
      "collectMetrics": true,
      "instrumentationEnabled": true,
      "dataCollectionEnabled": true
    }
  }
}

Configura el seguimiento de rendimiento

Puedes empezar a rastrear actividades específicas de la app, como consultas a la base de datos o solicitudes de red, usando Firebase Performance Monitoring.

  • Rastrear consultas de base de datos
async function trackDatabaseQuery() {
  const trace = await FirebasePerformance.startTrace({ traceName: 'database_query' });

  // Perform your database operation
  await performDatabaseOperation();

  await FirebasePerformance.stopTrace({ traceName: 'database_query' });
}
  • Monitorear solicitudes de red
await FirebasePerformance.setAttributes({
  traceName: 'api_call',
  attributes: {
    endpoint: '/users',
    method: 'GET'
  }
});
  • Rastrear métricas personalizadas

Para métricas personalizadas, como rastrear el valor de un carrito de compras:

await FirebasePerformance.putMetric({
  traceName: 'checkout_flow',
  metricName: 'cart_value',
  value: 99.99
});

Una vez implementadas estas trazas, puedes revisar los datos recopilados en la consola de Firebase.

Usa la consola de Firebase

Una vez configurado el monitoreo, puedes ver y analizar los datos de rendimiento de tu app en la consola de Firebase:

  1. Acceder a los datos de rendimiento

    • Inicia sesión en la consola de Firebase.
    • Selecciona tu proyecto.
    • Navega a Monitoreo de rendimiento.
    • Selecciona tu app desde el menú desplegable.
  2. Monitorea métricas clave

El dashboard ofrece información sobre diversos indicadores de rendimiento, como:

  • Tiempo de inicio de la app
  • Tasa de éxito de las solicitudes de red
  • Tiempo de renderizado de pantalla
  • Resultados de trazas personalizadas
  1. Configura informes personalizados

Crea informes a medida para analizar aspectos específicos del rendimiento de tu app, como:

  • Diferencias de rendimiento por ubicación
  • Métricas por tipo de dispositivo
  • Efectos de las condiciones de red
  • Patrones en trazas personalizadas

Usa estas herramientas para identificar y resolver cuellos de botella de rendimiento de forma eficaz.

Sentry Configuración del tracking de errores

Dashboard de seguimiento de errores de Sentry

Firebase gestiona las métricas de rendimiento, pero Sentry se centra en capturar y diagnosticar errores. Juntos, ofrecen una configuración de monitoreo sólida.

Instala Sentry SDK

Comienza instalando los paquetes de Sentry necesarios:

npm install @sentry/capacitor
# Add the Sentry package for your specific framework

Una vez instalado, configura Sentry en el punto de entrada de tu app.

Inicializa Sentry

Configura Sentry en el punto de entrada de tu app con la siguiente configuración:

import * as Sentry from "@sentry/capacitor";
import { BrowserTracing } from "@sentry/browser";

Sentry.init({
    dsn: "your-project-dsn",
    integrations: [new BrowserTracing()],
    tracesSampleRate: 0.2,
    environment: "production",
    release: "app-version@" + process.env.VERSION,
    dist: process.env.BUILD_NUMBER,
    debug: false
});

Esta configuración incluye el seguimiento de releases, que vincula los errores a versiones específicas de la app.

Configurar el seguimiento de errores

Puedes personalizar aún más el seguimiento de errores usando error boundaries personalizados y bloques try-catch.

Error boundaries personalizados:

class ErrorBoundary extends React.Component {
    componentDidCatch(error, errorInfo) {
        Sentry.captureException(error, { extra: errorInfo });
    }
}

Seguimiento de errores específicos:

try {
    riskyOperation();
} catch (error) {
    Sentry.captureException(error, {
        tags: { operation: "data_sync", severity: "critical" },
        extra: { userId: currentUser.id, timestamp: new Date().toISOString() }
    });
}

Monitoreo de rendimiento:

const transaction = Sentry.startTransaction({
    name: "API Request",
    op: "http.request"
});

try {
    await makeApiCall();
} finally {
    transaction.finish();
}

Estos métodos garantizan que tu app registre errores de forma efectiva, facilitando su seguimiento y resolución a través de Sentry.

Usar el dashboard de Sentry

El dashboard de Sentry ofrece herramientas para analizar los errores y comprenderlos mejor:

  • Monitoreo en tiempo real: Comprueba la frecuencia de errores, el estado de resolución y los usuarios afectados.
  • Análisis de errores: Revisa las stack traces, agrupa errores similares y filtra por entorno.
  • Alertas: Define umbrales de error, configura las opciones de notificación y crea reglas de alerta personalizadas.

Este dashboard hace que diagnosticar y corregir problemas sea sencillo.

Buenas prácticas de monitoreo

Céntrate en las métricas clave

El análisis de Capgo de 750 apps en producción [1] destaca las métricas clave a monitorear:

  • Tasa de éxito de actualizaciones: Apunta a al menos un 82%.
  • Velocidad de actualización: El CDN global debería entregar 5 MB en 114 ms.
  • Adopción de usuarios: El 95% de los usuarios debería actualizarse en 24 horas.
  • Tiempo de respuesta de API: Mantenlo por debajo de 500 ms (el promedio global es de 434 ms).

Configura alertas para detectar rápidamente cualquier desviación en estas métricas.

Crear reglas de alerta efectivas

Aquí tienes un ejemplo de cómo configurar alertas para el monitoreo de rendimiento:

// Example alert configuration
{
    performance: {
        apiLatency: {
            threshold: 1000, // ms
            period: "5m",
            condition: "above"
        },
        errorRate: {
            threshold: 1.0, // percentage
            period: "15m",
            condition: "above"
        },
        updateSuccess: {
            threshold: 75, // percentage
            period: "1h",
            condition: "below"
        }
    }
}

Seguir monitoreando y ajustando

Una vez configuradas las alertas, centra tu atención en el monitoreo continuo y la optimización:

  • Comprobaciones de rendimiento periódicasRevisa las tasas de éxito de las actualizaciones por región, analiza las tendencias de errores en distintas versiones de la app y monitorea los tiempos de respuesta de API en horas pico.

  • Despliegues escalonados de actualizaciones: Comienza con el 10% de los usuarios durante las primeras 24 horas. Si todo funciona sin problemas, aumenta al 50% y finaliza el despliegue tras 48 horas de rendimiento estable.

  • Optimización continuaInvestiga actualizaciones fallidas, identifica endpoints de API con bajo rendimiento y evalúa la interacción de los usuarios tras las actualizaciones para garantizar mejoras sostenidas.

Capgo Actualizaciones y monitoreo

Interfaz del dashboard de Capgo Live Update

Funciones principales de Capgo

El sistema de live update de Capgo, probado en 750 apps en producción, entrega bundles de 5MB en solo 114ms [1].

Las funciones clave incluyen:

  • Analytics en tiempo real: Monitorea las tasas de éxito de las actualizaciones, que actualmente promedian un 82% a nivel mundial [1].
  • Despliegue instantáneo: Push critical fixes without waiting for app store approvals.
  • Actualizaciones parciales: Descarga solo los componentes modificados, ahorrando ancho de banda y tiempo.
  • Control de versiones: Revierte rápidamente las actualizaciones que afecten negativamente el rendimiento.

Este sistema se integra fácilmente con las herramientas de monitoreo existentes, garantizando un funcionamiento fluido.

“Desplegamos las actualizaciones OTA de Capgo en producción para nuestra base de +5000 usuarios. Vemos un funcionamiento muy fluido: casi todos nuestros usuarios están al día a los pocos minutos de desplegar la OTA en @Capgo.” - colenso [1]

Combina tus herramientas con Capgo

La analítica de Capgo permite rollouts escalonados y ayuda a los equipos a garantizar la estabilidad antes del lanzamiento completo.

Aspecto de monitoreo Integración con Capgo Herramientas adicionales
Seguimiento de errores Monitoreo de errores integrado Combínalo con Sentry para stack traces detallados
Métricas de rendimiento Rastrea la tasa de éxito de las actualizaciones Usa Firebase para datos de interacción del usuario
Tiempo de respuesta Monitoreo de respuestas de API Mejora con eventos de temporización personalizados de Firebase

Para configurar eficazmente el sistema de canales de Capgo:

  • Deploy updates to beta testers first.
  • Usa la analítica de Capgo para supervisar las métricas de rendimiento.
  • Amplía gradualmente el despliegue a la base de usuarios más amplia.

“Practicamos desarrollo ágil y @Capgo es fundamental para hacer entregas continuas a nuestros usuarios.” - Rodrigo Mantica [1]

Con 23,5M de actualizaciones entregadas a nivel global, el dashboard en tiempo real de Capgo ofrece información clara que permite a los equipos tomar decisiones inteligentes sobre actualizaciones y mejoras de rendimiento.

Próximos pasos

Puntos clave

Mantener un ojo en las métricas clave es crucial para un monitoreo de rendimiento efectivo. Usa herramientas para rastrear estos indicadores críticos:

Tipo de métrica Áreas de enfoque clave Herramientas recomendadas
Rendimiento de la app Tiempos de respuesta, crashes Firebase Performance
Seguimiento de errores Tasas de excepciones, stack traces Sentry
Analytics de actualizaciones Éxito de la distribución Analytics de Capgo

Profundiza en estas métricas y herramientas con los recursos que aparecen a continuación.

Más información

Las herramientas y prácticas de monitoreo de rendimiento siempre están evolucionando. Mantente al día explorando estas guías y estrategias:

Documentación oficial:

  • Documentación de Firebase Performance Monitoring
  • Guía de integración de Capacitor de Sentry
  • Guías oficiales de optimización de rendimiento de Capacitor

Implementación avanzada: Explora el sistema de analíticas de Capgo, usado con éxito en más de 750 apps en producción [1]. Su documentación ofrece información sobre patrones de monitoreo y estrategias de live update que funcionan a la perfección con otras herramientas de seguimiento de rendimiento.

Continúa desde Configurar Performance Monitoring en Capacitor

Si estás usando Configura el monitoreo de rendimiento en Capacitor para planificar el trabajo con plugins nativos, conéctalo con Directorio de plugins de Capgo para el flujo de trabajo del producto en Capgo Plugin Directory, Plugins de Capacitor por Capgo para el detalle de implementación en los Plugins de Capacitor por Capgo, Añadir o actualizar plugins para el detalle de implementación en Agregar o actualizar plugins, Alternativas a plugins de Ionic Enterprise para el flujo de trabajo en Alternativas a plugins de Ionic Enterprise, y Native Builds de Capgo para el flujo de trabajo del producto en Capgo Native Builds.

Live updates para apps Capacitor

Cuando un bug de la capa web está en producción, publica el fix a través de Capgo en lugar de esperar días a la aprobación de la app store. Los usuarios reciben la actualización en segundo plano mientras los cambios nativos siguen el flujo de revisión habitual.

Lo último de nuestro blog

Capgo te da la información clave que necesitas para crear una app móvil realmente profesional.