跳过主要内容

设置Capacitor的性能监控

了解如何使用Firebase和Sentry在您的应用程序中设置性能监控,以提高效率和用户满意度。

马丁·多纳迪厄

马丁·多纳迪厄

内容营销人员

设置Capacitor的性能监控

想优化您的 Capacitor app的性能? 监控工具如 FirebaseSentry 可以帮助您跟踪崩溃、资源使用情况和响应时间,确保更流畅的用户体验。以下是快速概述:

  • 为什么监控性能:识别崩溃、优化资源使用情况和改进响应时间。
  • 使用的工具:
    • Firebase:实时性能数据、网络监控和自定义事件跟踪。
    • Sentry:详细错误跟踪、堆栈跟踪分析和实时通知。
  • 设置步骤:
    • 安装 Firebase 或 Sentry SDK。
    • 配置应用程序以跟踪性能指标或错误。
    • 使用仪表板分析和改进应用程序性能。

快速比较:

功能FirebaseSentry
实时监控轻微延迟几乎实时
原生支持安卓, iOS安卓, iOS, Web
自定义指标基础灵活
集成复杂度基于Google的工作流简单的SDK设置

为了实时更新,集成工具如 Capgo 立即推送修复而无需等待应用商店延迟。今天开始监控以提高应用的效率和用户满意度

优化应用健康 Firebase 性能监控 …

Firebase 平台控制台

选择监控工具

选择一个适合您的应用需求和团队专业知识的监控工具。以下是 Firebase Performance Monitoring 和 Sentry 的比较,以帮助您做出决定。

工具比较

功能Firebase Performance MonitoringSentry
定价模型免费层可扩展的付费选项免费层可负担的增长计划
实时监控性能见解可能会有轻微延迟近实时监控
原生平台支持Android 和 iOSAndroid、iOS 和 web
集成复杂度与 Google 服务兼容简单的 SDK 设置
自定义事件跟踪__CAPGO_KEEP_0____CAPGO_KEEP_0__
保留期免费层上有所限制所有计划中均可使用

选择标准

在选择这些工具时,请考虑以下因素:

  • 应用大小和流量对于预期快速增长的应用,Firebase是一个不错的选择。对于较小规模的实施,Sentry可能更合适。
  • 技术要求Firebase需要 Google Play Services, 适合于该生态系统内的应用。 Sentry独立工作,提供了更大的灵活性跨平台。
  • 团队经验: Firebase与Google工具熟悉的团队相吻合,而Sentry的简单SDK设置更适合广泛的用例。
  • 预算限制: 两者都提供免费层次,但比较扩展功能的成本,以确保它们符合您的预算。
  • 集成目标: Firebase与Google基于的工作流程集成无缝,而Sentry在错误跟踪方面表现出色。
  • 法规要求: 确保工具符合标准,如 GDPR,尤其是如果您的应用处理敏感用户数据。
  • 更新频率: 如果频繁更新是关键,工具如 Capgo 可以加速实时修复,补充您的监控设置。

Firebase 配置指南

在您的 __CAPGO_KEEP_0__ 应用中设置 Firebase 性能监控 Capacitor app 安装 Firebase __CAPGO_KEEP_0__

首先添加 Firebase SDK 到您的项目并为您的平台(s) 配置它:

Start by adding the Firebase SDK to your project and configuring it for your platform(s):

  • 运行以下命令来安装必要的 Firebase 包:

初始化 Firebase

npm install @capgo/capacitor-firebase-performance
npm install firebase
  • 在您的主应用文件中设置 Firebase:

添加平台配置

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();
  • Install Firebase __CAPGO_KEEP_0__

更新您的 capacitor.config.json 文件以启用性能监控:

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

设置性能跟踪

您可以使用 Firebase Performance Monitoring 开始跟踪特定应用程序活动,如数据库查询或网络请求。

  • 跟踪数据库查询
async function trackDatabaseQuery() {
  const trace = await FirebasePerformance.startTrace({ traceName: 'database_query' });

  // Perform your database operation
  await performDatabaseOperation();

  await FirebasePerformance.stopTrace({ traceName: 'database_query' });
}
  • 监控网络请求
await FirebasePerformance.setAttributes({
  traceName: 'api_call',
  attributes: {
    endpoint: '/users',
    method: 'GET'
  }
});
  • 跟踪自定义指标

对于自定义指标,如跟踪购物车的值:

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

一旦这些跟踪实现了,您就可以在 Firebase Console 中查看收集的数据。

使用 Firebase Console

在设置监控后,您可以在 Firebase Console 中查看和分析应用程序的性能数据:

  1. 访问性能数据

    • 登录 Firebase 控制台。
    • 选择您的项目。
    • 导航到 性能监控.
    • 从下拉菜单中选择您的应用。
  2. 监控关键指标

仪表盘提供了各种性能指标的见解,包括:

  • 应用启动时间
  • 网络请求成功率
  • 屏幕渲染时间
  • 自定义跟踪的结果
  1. 设置自定义报告

根据您的应用程序的具体需求,创建定制报告以分析应用程序的性能,例如:

  • 不同地区的性能差异
  • 基于设备类型的指标
  • 网络条件的影响
  • 自定义跟踪中的模式

使用这些工具有效地识别和解决性能瓶颈。

Sentry 错误跟踪设置

Sentry错误跟踪仪表板

Firebase处理性能指标,但Sentry专注于捕获和诊断错误。他们一起为您提供强大的监控设置。

安装Sentry SDK

首先安装所需的Sentry包:

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

安装完成后,在应用入口处设置 Sentry。

初始化 Sentry

使用以下设置在应用入口处配置 Sentry:

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
});

此配置包括发布跟踪,用于将错误与特定应用版本关联起来。

配置错误跟踪

您可以通过使用自定义错误边界和 try-catch 块来进一步定制错误跟踪。

自定义错误边界:

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

跟踪特定错误:

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

监控性能:

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

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

这些方法确保您的应用程序有效地记录错误,使其更容易跟踪和通过 Sentry 解决。

使用 Sentry 控制台

Sentry 控制台提供工具来深入了解错误并更好地理解它们:

  • 实时监控: 检查错误频率、解决状态和受影响用户。
  • 错误分析: 查看堆栈跟踪、分组类似错误并根据环境过滤。
  • 警报: 设置错误阈值、配置通知选项并创建自定义警报规则。

该仪表盘使诊断和修复问题变得简单。

监控最佳实践

关注关键指标

Capgo对750个生产应用程序的分析 [1] 突出了需要监控的关键指标:

  • 更新成功率: 目标至少达到82%。
  • 更新速度: 全球CDN应在114毫秒内传输5MB。
  • 用户采纳: 24小时内95%的用户应更新。
  • API 响应时间: 保持在500毫秒以下(全球平均值为434毫秒)。

设置警报以快速检测这些指标的任何偏差。

创建有效的警报规则

以下是如何配置性能监控警报的示例:

// 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"
        }
    }
}

持续监控和调整

一旦您的警报就位,就专注于持续监控和优化:

  • Regular Performance Checks: Review update success rates by region, analyze error trends for different app versions, and monitor API response times during peak hours.

  • Staged Rollouts for Updates: Begin with 10% of users for the first 24 hours. If everything runs smoothly, increase to 50% and finalize the rollout after 48 hours of stable performance.

  • Ongoing Optimization: Investigate failed updates, identify slow-performing API endpoints, and evaluate user engagement following updates to ensure sustained improvements.

Capgo Updates and Monitoring

Capgo Live Update Dashboard Interface

Capgo Core Features

Capgo’s live update system, tested on 750 production apps, delivers 5MB bundles in just 114ms [1].

Key features include:

  • 实时分析: 全球平均成功率为82%,实时监控更新情况 [1].
  • 即刻部署: 无需等待应用商店审批,立即推送关键修复
  • 部分更新: 只下载更改的组件,节省带宽和时间
  • 版本控制: 快速回滚对性能造成负面影响的更新

本系统与现有监控工具集成,确保顺畅运作

“We rolled out Capgo OTA updates in production for our user base of +5000. We’re seeing very smooth operation almost all our users are upto date within minutes of the OTA being deployed to @Capgo.” - colenso [1]

将Capgo与其他工具结合

Capgo的分析功能支持分阶段发布,帮助团队确保稳定性在全面发布之前

监控方面Capgo 集成额外工具
错误跟踪内置错误监控与 Sentry 配对获取详细的堆栈跟踪
性能指标跟踪更新成功率使用 Firebase 追踪用户交互数据
响应时间API 响应监控通过自定义 Firebase 定时事件来增强

为了有效地配置Capgo的频道系统:

  • 首先向beta测试者发布更新。
  • 使用Capgo的分析工具监控性能指标。
  • 逐渐扩大发布到更广泛的用户群。

“We practice agile development and @Capgo is mission-critical in delivering continuously to our users!” - Rodrigo Mantica [1]

我们实践敏捷开发,@Capgo在持续交付给我们的用户方面是 mission-critical!

全球共交付了 23.5M 次更新,__CAPGO_KEEP_0__的实时仪表板提供了清晰的见解,使团队能够对更新和性能改进做出明智的决策。

下一步

主要点

监控关键指标对于有效的性能监控至关重要。使用工具跟踪这些关键指标:指标类型重点关注领域
App Performance响应时间、崩溃Firebase Performance
错误跟踪异常率、堆栈跟踪Sentry
更新分析发布成功率Capgo 分析

通过以下资源深入了解这些指标和工具。

了解更多

性能监控工具和实践不断进步。通过浏览这些指南和策略,保持领先地位:

官方文档:

  • Firebase Performance Monitoring 文档
  • Sentry 的 Capacitor 集成指南
  • Capacitor 的官方性能优化指南

高级实现: 探索 Capgo 的分析系统,成功用于超过 750 个生产应用 [1]. 他们的文档提供了监控模式和实时更新策略的见解,这些策略与其他性能跟踪工具无缝集成

从 Set Up Performance Monitoring in Capacitor 中继续

如果您正在使用 在 Capacitor 中设置性能监控 来规划原生插件工作,连接它与 Capgo 插件目录 产品工作流程在Capgo插件目录中 Capacitor插件由Capgo提供 产品工作流程在Capacitor插件由Capgo提供 添加或更新插件 产品工作流程在添加或更新插件中 Ionic企业插件替代品 产品工作流程在Ionic企业插件替代品中 Capgo原生构建 产品工作流程在Capgo原生构建中

Capacitor实时更新

当有web层bug时,通过Capgo直接发布修复,而不是等待几天的app store审批。用户在后台接收更新,而native变化仍在正常审批路径中。

立即开始

最新博客

Capgo为您提供创建真正专业的移动应用所需的最佳见解。