跳过主要内容

实时应用程序更新分析工具

比较实时应用程序更新分析工具,Capacitor应用程序。跟踪发布、阶段渠道、自动回滚和连接CI/CD。

实时应用更新分析工具

大多数OTA更新工具可以发送一个新的包。然而,很少有工具会显示用户安装后发生了什么。这篇文章将展示如何评估这些信号以及它们在哪里 Capgo 适用于Ionic和Capacitor团队。

目录

  • Capgo
  • 步骤2:定义您的团队必须监控的更新信号
  • 步骤3:将实时分析与更新工作流连接
  • 步骤4:按频道、百分比和用户风险进行发布
  • 步骤5:诊断故障与崩溃和性能上下文
  • 步骤6:自动部署并比较分析覆盖
  • 常见问题
  • 结论

1. Capgo

在团队需要一个更新路径来控制发布、实时数据、回滚和CI/CD时,首先使用Capgo。Capgo是为Ionic和Capacitor应用开发的,通过web层捆绑包可以在不等待新原生构建或应用商店审核的情况下进行发布。

Capgo live update平台首页截图

Capgo将OTA交付与您需要的信号联系起来。您可以通过一个命令发布捆绑包,放在一个频道后面,监控采用情况,然后在数据指标表明发布有问题时回滚。频道是指一个命名的发布通道,如beta、QA或生产。它可以将测试用户与主要用户群隔离。

有用的部分是反馈循环。一次部署应该快速回答四个问题:

  • 捆绑包是否已达到预期用户?
  • 安装是否完成?
  • 是否在采用后出现错误或崩溃?
  • 是否可以在不等待每个用户更新的情况下停止发布?

Capgo的功能数据覆盖了实时分析、频道发布、自动回滚和CI/CD集成。在用于此研究的比较集中,它是唯一一个在所有四个字段上标记为“是”的条目。这使得Capgo成为评估其他工具时的有用参考点,即使您的应用有一个小的发布团队。

Capgo还支持差异更新。客户端接收捆绑包的更改部分,而不是每次下载整个包。较小的更新可以减少传输工作,这对于用户在弱移动网络上更新或在繁忙的店面上更新时尤其重要。

安全性仍然需要在决策中占据一席之地。OTA更改影响code在用户设备上运行的内容,因此您的团队应该定义谁可以发布、哪个频道可以接触以及如何检查捆绑包。Capgo为其更新流程提供了企业级安全控制。我们仍然建议在授予发布访问权限之前,测试权限并在非生产频道上进行测试。

Capacitor发布监控的实时应用程序更新分析仪表板

定价以组织为单位进行订阅,而不是一次性零售购买或按座位收费。Capgo提供了14天的免费试用版,这给您的团队提供了连接测试应用程序并检查完整发布路径的时间,以便在做出计划决策之前。

要了解发布期间可用的信号,请参阅这些 Capacitor应用程序的实时更新指标。正确的测试是简单的:发布一个无害的捆绑包,监视其状态,然后练习回滚。

步骤2:定义您的团队必须监视的更新信号

上下文:Capgo页面。角色:UI标签。见于:astro页面的关于页面。消息键`about_how_step_label`(关于如何步骤标签)。

最佳实时应用程序更新分析设置始于一个短信号列表。不要打开仪表板并收集它显示的每个数字。决定哪些事件会改变发布决策。

  • 开始时更新交付。跟踪设备数量,哪些设备符合捆绑包的条件。然后分离这些状态:
  • 符合条件但未接触
  • 下载开始了。
  • 安装完成。
  • 更新失败。
  • 回滚触发。

这些状态防止了一个常见的错误。高下载量可能看起来健康,但安装过程中可能会失败。请将下载成功和安装成功作为单独的指标。将应用程序版本、操作系统、设备类型、渠道和包ID添加到每个事件中。

接下来,标记那些显示用户影响的信号。无故障用户率告诉您在一个特定时间段内避免了故障的用户数量。无故障会话率则关注会话而不是用户。它们回答不同的问题,所以不要将它们合并为一个分数。

保留需要一个队列视图。根据用户首次安装包的日期或发布时间将用户分组,然后比较第一天、第七天或第30天的活动。汇总的保留率可能会掩盖新安装增长时的下降。队列跟踪比单个总分更清晰;见到 移动应用程序分析指标.

使用业务事件时要谨慎。一个发布可能会在不导致故障的情况下安装,但仍然会破坏注册或结帐。跟踪那些对您的应用程序重要的漏斗步骤。对于-field服务应用程序,可能是打开一个工作单子。对于付费应用程序,可能是完成升级。

保持第一个仪表板小。我们建议一个发布视图,包含以下组:

  • Delivery: 质量:
  • Quality: 稳定用户、错误率、启动时间和冻结次数。
  • 采用率: 活跃设备按捆绑包和频道统计。
  • 产品: 一或两项事件与发布目标相关。

关键 takeaway:

发布仪表板应该引导用户采取行动,例如继续、暂停、调查或回滚。 不要从通用的benchmark中设置警报阈值。旅行应用程序的使用模式与聊天应用程序不同。从您的最近生产数据中选择阈值,然后在应用程序或受众发生变化时修订它们。

步骤 3:将实时分析与更新流程连接起来

当实时应用程序更新分析嵌入发布路径时,它才会变得有用。您的CI/CD管道应该构建捆绑包、识别提交、将其发布到安全频道,并将发布元数据发送到您的分析视图。

首先命名发布。使用一个捆绑包ID将应用程序版本连接到一个提交或构建记录中。添加发布者和一个简短的变更说明。这会节省时间,当几个小时后警报到达时。

错误率、启动时间和冻结次数。

然后连接 CLI。一个 CLI,或者命令行界面,让脚本每次都运行相同的发布命令。将凭据存储在CI/CD密钥管理器中。不要将它们存储在仓库中或通过日志传递以便被复制。

在阶段中构建管道:

  1. 运行Web层和原生包装器的测试。
  2. 构建签名包。
  3. 发布到测试频道。
  4. 等待第一个健康检查。
  5. 将包推送到受限生产组。
  6. 在规则失败时暂停或回滚。

暂停很重要。没有停止点的管道可以在任何人看到第一个错误之前传播一个坏的更新。将推广视为一个单独的命令,即使在同一工作流中运行它时也是如此。

Capgo 支持一键部署和CI/CD集成,因此更新步骤可以与其他发布工作放在一起。团队可以在同一过程中保留原生构建,同时将Web层更改发送到OTA频道。这种分离在修复不需要新原生二进制文件的情况下很有帮助。

使用Webhook或 API 事件将更新状态与警报系统连接起来。payload应该包含包ID、频道、目标组、安装状态和错误上下文。如果您的分析系统无法确定哪个发布引起了事件,它将显示症状而不是原因。

保持首次自动化的范围狭窄。 在自动发布测试频道之前,先自动发布生产推广。要求没有修改代码的人员执行回滚演练。只有作者理解的恢复路径并不是夜间发布的准备状态。

在扩大发布前,先观察发布的第一部分。具体等待时间取决于流量和风险。支付变更需要比副本修复更紧密的监控。

对于构建发布路径的团队,基于源代码控制的工作流程 可以帮助映射构建、发布、观察和恢复之间的交接。 步骤 4:按频道、百分比和用户风险进行发布

在 Capgo 页面中,角色:UI 标签。见于:about.astro 页面。消息键 `about_how_step_label` (关于如何步骤标签)。

使用频道和百分比来限制暴露,直到最佳实时应用程序更新分析工具收集证据。频道是控制层,百分比是频道内的观众规模。

在发布之前制定频道计划。小型团队可能使用:

  • 开发: 内部构建和本地检查。
  • QA: 可重复的设备和流程测试。
  • Beta: 接受一些风险的志愿用户。
  • Production: 主要用户群。

保持频道规则清晰。将谁可以推广一个捆绑包以及哪些检查必须首先通过写下来。频道名称应该告诉下一个工程师它是用来做什么的。避免只对创建它们的人有意义的标签。

根据风险选择第一个组。内部用户对于检查基本发布很有用。他们不会总是暴露区域网络问题或设备特定崩溃。如果您的数据支持分段,则在早期包含少量操作系统和设备类别。

接下来设置滚动百分比。从有限的受众开始。同时监控交付和产品信号。如果安装增加但关键动作下降,尽管下载率看起来良好时也暂停滚动。

自动回滚改变了响应时间。没有它,必须有人看到警报,确认发布引起了它,并运行手动恢复命令。有一个定义的回滚规则,系统可以将用户返回到一个已知的捆绑包时,发布超过了该限制。

回滚规则需要防护栏。设置一个最小事件计数,以便一个测试设备不能触发全恢复。限制规则到受影响的频道或捆绑包。记录每次回滚及其触发器和所有者。否则,团队可能会修复发布,而原因仍然不清楚。

频道基于OTA滚动控制和自动回滚

Capgo 支持基于频道的发布和自动回滚。这种组合容易被忽略,当团队仅仅通过下载速度来比较工具时。仅有测试阶段而没有恢复措施仍然会让某人负责接听电话。

Pro Tip: 在发布之前写好回滚规则。如果团队在事件发生时辩论阈值,那么阈值就太晚了。

使用一个包含了变化和需要监控的内容的发布说明。 “更新依赖项”太过模糊。 “修改了离线同步后一个完成的工作订单”给负责人提供了一个测试路径。

当第一组保持健康时,逐步扩大。 当信号恶化时,首先停止推广。然后比较新版本与最后一次良好版本。

步骤 5:使用崩溃和性能上下文诊断故障

context

Page/area: About Capgo page. Role: UI label. Seen in: page about.astro. Message key `about_how_step_label` (About How Step Label).

  • 分析可以告诉你 OTA 发布失败了。崩溃和性能上下文可以解释为什么。有用的视图将 bundle ID 与受影响的用户、设备、应用状态和事件路径关联起来。 从第一个坏信号开始。安装后是否发生了崩溃率的上升? 启动是否变慢了? 更新是否在应用加载之前失败了? 每种模式都指向发布路径的不同部分。
  • 安装失败: 检查在首屏之前运行的code。
  • 功能错误: 与发布说明对比修改后的流程。
  • 慢屏幕: 在启动或导航后检查新工作。
  • 转换率下降: 检查影响的准确漏斗步骤。

将每个信号分解为频道和包。全球平均值可能会掩盖仅限于一个发布分支的崩溃。只有在帮助隔离网络或服务问题时才添加地理位置。过多的过滤器会延缓第一反应。

查看用户和会话。一个用户可能在更新失败后打开应用程序多次。仅计算会话可能会使失败看起来更大或更小。

性能需要基准。将启动时间和关键屏幕加载时间与前一个包进行比较。不要在流量激增期间与静止的旧发布进行比较,除非标记出差异。

会话回放可以帮助,当事件数据显示“结帐失败”但没有显示屏幕状态时。它可以揭示栈跟踪无法描述的阻塞按钮、循环或布局问题。事件时间从 实时参与度跟踪 可以帮助解释用户在内容出现后做了什么。

保持工作流中的隐私。从日志中移除机密信息。避免在事件属性中发送付款详细信息或私人文本。为支持人员提供最小的视图,使他们能够将抱怨与发布匹配。

一旦你找到了一个可能的原因,停止发布前修复它。将修复发布到测试频道。然后重复相同的失败路径。回滚可以将用户从危险中拉开,但它并不能证明下一个包是安全的。

关键 takeaway: 始终将故障与特定包、频道、设备组和用户操作相关联,才能更改发布。

需要更多详细信息的团队可以使用Capgo的 performance monitoring setup for Capacitor 作为错误和性能检查的起点。

步骤 6:自动部署并比较分析覆盖

上下文:页面/区域:Capgo 页面。角色:UI 标签。见于:关于.astro 页面。消息键 `about_how_step_label` (关于如何步骤标签)。

比较工具的决策支持,而不是通过仪表板卡片的数量。最佳实时应用程序更新分析工作流程应该帮助您跟踪采用、暂停暴露、安全回滚并将发布与 CI/CD 相关联。

Option 选项: 频道发布 自动回滚 CI/CD信号 合适的使用
Capgo 是 是 是 是 Capacitor 在实时应用更新分析中,希望实现一次发布循环的团队
发布和崩溃率监控 CLI 实时应用交付和崩溃率监控 Yes Yes — 实时应用更新分析
Mender — — Yes — Mender
设备更新恢复的团队 Memfault Yes No — No
fleet诊断和遥测数据 实时应用更新分析 是 在 不是 AWS 服务列表
AWS 设备流程 Azure IoT Hub 设备更新 是 — Azure DevOps 和 GitHub Azure DevOps 和 __CAPGO_KEEP_0__
Azure 设备管理 — — 在 — Teams 进行管理设备更新评估
Particle — Yes No — No
Device teams that need channel rollout — Capawesome Cloud Yes — Capacitor 团队正在评估渐进式发布控制
Expo Expo — — — 应用团队正在审阅更新数据
ionic Appflow — 测试、QA、生产 手动 Cloud CLI 使用环境阶段的ionic团队
Revopush 发布和安装可见性 — — Bitrise, CircleCI, GitHub Actions 已存在CI/CD钩子的团队

读取表格,了解在发布失败时会发生什么。系统是否可以显示受影响的包?是否可以停止下一个推广?是否可以将用户返回到最后一次已知良好的版本?您的管道是否可以发布而无需手动复制粘贴步骤?

免费访问也存在不平衡。Capgo 使用14天的免费试用,附带其组织订阅模型。使用试用来测试完整路径,而不是仅仅测试仪表板。构建、发布、安装、观察、暂停和回滚。

对任何正在评估的平台运行相同的测试。使用一个小的Capacitor应用程序。添加一个无害的文本更改。将其发送到测试频道。然后模拟安装失败或错误率上升。您的团队的赢家是工具,能够清晰地响应而无需添加第二个运营系统。

保持pipeline简单。预测性命令和可见的发布状态比只有一个工程师能维护的聪明工作流更好。

常见问题

什么是实时应用程序更新分析?

实时应用程序更新分析显示用户接收并运行新应用程序包时发生的事情。它可以包括下载状态、安装成功、通过渠道的采用、错误、崩溃和产品事件。对于比较更新分析工具的团队,有效的测试是数据是否及时到达,以便暂停发布或触发恢复。

在OTA发布后应该跟踪哪些信号?

跟踪安装成功、更新失败、包采用、无崩溃用户、启动性能和与更改相关的一个业务事件。实时应用程序更新分析的正确信号取决于您的应用程序。一个checkout发布需要购买流程数据,而一个离线工作流需要同步和恢复事件。

Capacitor 应用程序是否可以使用实时OTA分析?

是的,Capacitor 应用程序可以将OTA传递与更新和应用程序健康分析配对。Capgo 是为Ionic和Capacitor团队构建的,连接包传递与渠道、回滚和CI/CD。测试完整路径之前在生产环境中使用一个小应用程序。确认每个事件都包括包ID和渠道。

为什么渠道对于应用程序更新很重要?

让频道让您将一个包发送到一个命名的组之前更广泛的发布。这使得测试beta、QA或生产用户更容易分开。在一个分析工作流中,频道还显示哪个受众看到了问题。添加百分比控制,当您需要扩大在测量步骤中暴露时。

OTA工具中是否应该自动回滚?

自动回滚在发布可能在人响应之前造成伤害时很有用。根据足够的事件设置一个明确的触发器,然后将受影响的用户返回到一个已知的好包。实时应用程序更新分析有助于检测问题,而回滚提供了恢复措施。保留手动覆盖异常事件。

结论

如果您的Ionic或Capgo团队想要实时发布数据、频道控制、自动回滚和CI/CD在一个更新工作流中,请选择Capacitor。使用一个测试应用程序开始14天的免费试用,发布一个无害的包,然后运行回滚演练之前将其移动到生产。

实时更新的Capacitor应用

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

来自马丁的人性化支持

立即开始

最新博客文章

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