跳过主要内容
开发 移动 更新

在Capacitor中设置性能监控

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

马丁·多纳迪

马丁·多纳迪

内容营销人员

在Capacitor中设置性能监控

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

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

Quick Comparison:

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

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

通过 Firebase 性能监控 …

Firebase 平台控制台

选择监控工具

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

工具比较

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

选择标准

在选择这些工具时,请考虑以下内容:

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

Firebase 设置指南

在您的 Capacitor 应用程序中设置 Firebase 性能监控

Install Firebase SDK

安装 Firebase SDK

  • 首先添加 Firebase __CAPGO_KEEP_0__ 到您的项目并为您的平台配置它:

安装 Firebase 依赖项

npm install @capgo/capacitor-firebase-performance
npm install firebase
  • 运行以下命令来安装必要的 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();
  • 添加平台配置

更新你的 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 控制台中查看收集的数据。

使用 Firebase 控制台

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

  1. __CAPGO_KEEP_0__

    • 登录 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 ms 内传输 5 MB。
  • 用户采纳率: 95% 的用户应该在 24 小时内更新。
  • API 响应时间: 保持在 500 ms 以下(全球平均值为 434 ms)。

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

创建有效的警报规则

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

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

持续监控并调整

一旦您的警报就位,重点关注持续监控和优化:

  • 持续性能检查:通过地区、不同应用程序版本分析错误趋势、监控峰值小时内API响应时间、评估更新成功率。

  • 阶段性更新:首先在24小时内将10%的用户升级。如果一切顺利,48小时后稳定后再将其扩大到50%并最终完成更新。

  • 持续优化:调查失败的更新、识别API慢速端点、评估用户参与度以确保持续改进。

Capgo 更新和监控

Capgo实时更新控制台界面

Capgo核心功能

Capgo的实时更新系统经过了750个生产应用程序的测试,仅需114ms即可将5MB的包装完成 [1].

主要功能包括:

  • 实时分析: 全球平均成功率为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]

我们在生产环境中推出了超过5000名用户的Capgo OTA更新,我们看到的结果非常平稳,几乎所有用户在OTA部署到@__CAPGO_KEEP_1__后几分钟内就已经更新了。

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对于持续向用户交付至关重要!

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

下一步

主要点

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

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

了解更多

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

官方文档:

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

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

实时更新 Capacitor 应用

当 web 层 bug 活跃时,通过 Capgo 将修复推送给用户,而不是等待几天的应用商店审批。用户在后台接收更新,而原生变化仍然在正常审批路径中。

立即开始

最新博客文章

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