跳转到内容

Logs

日志页面提供应用程序更新事件和诊断信息的详细历史记录。这对于监控更新过程、解决问题以及了解您的设备如何与 Capgo 交互至关重要。您可以通过单击您的应用,然后单击“日志”选项卡(以前在一些较旧的屏幕截图或文档中称为“更新”) 来访问它。

从那里您应该看到与此类似的页面,显示日志条目列表:

显示主界面的日志页面概述
日志页面概述

日志页面界面包括:

  1. 日志选项卡 - 用于访问日志视图的导航选项卡
  2. 重新加载按钮 - 使用最新数据刷新日志列表
  3. 时间范围和操作过滤器 - 按日期范围和操作类型过滤日志(请参阅下面的部分)

每行显示:

  • 时间戳 (UTC)
  • 设备 ID
  • 操作代码(发生了什么)
  • 版本名称(捆绑包或 builtin

单击一行可跳转至设备详细信息页面以查看完整历史记录。

您可以使用日期选择器按特定时间段过滤日志:

用于过滤日志的日期范围选择器
日期范围过滤器
  1. 快速预设 - 选择常用时间范围:最近 1 小时、3 小时、6 小时或 12 小时
  2. 开始时间 - 设置范围的自定义开始时间
  3. 结束时间 - 设置范围的自定义结束时间
  4. 日历 - 使用日历视图选择特定日期

单击“选择”以应用您选择的日期范围,或单击“取消”以关闭选择器。

通过“操作”下拉列表,您可以按特定事件类型过滤日志:

用于按事件类型过滤日志的操作过滤器下拉列表
操作过滤器

可用的操作过滤器包括:

  • 设备心跳 - 设备定期运行状况检查
  • 请求删除版本 - 删除捆绑包版本时
  • 重置为默认版本 - 当设备恢复为内置捆绑包时
  • 版本安装成功 - 捆绑包安装成功
  • 新版本发送到设备 - 当 Capgo 向设备发送更新时
  • 版本安装失败 - 当捆绑包安装失败时

使用顶部的搜索框快速查找特定操作类型。您可以选择多个操作来显示与任何选定类型匹配的日志。

示例日志片段(假数据)|时间 (UTC) |设备 ID |行动|版本 |它告诉你什么 |

Section titled “示例日志片段(假数据)|时间 (UTC) |设备 ID |行动|版本 |它告诉你什么 |”

|------------|----------|--------|---------|--------------------| | 2025-01-14 10:00:01 | A1B2C3 | get | 2.4.1 |设备询问 Capgo 是否有可用更新 | | 2025-01-14 10:00:03 | A1B2C3 | download_manifest_start | 2.4.1 |清单获取已开始; SDK 即将下载文件 | | 2025-01-14 10:00:07 | A1B2C3 | download_40 | 2.4.1 |捆绑包下载已完成 40% | | 2025-01-14 10:00:12 | A1B2C3 | download_zip_complete | 2.4.1 | Zip 下载完毕 | | 2025-01-14 10:00:13 | A1B2C3 | set | 2.4.1 |捆绑包已安装并标记为下一步运行 | | 2025-01-14 10:05:00 | B9C8D7 | disableAutoUpdateToMajor | 1.9.0 |渠道政策阻止了向 2.x 的跳跃 | | 2025-01-14 10:05:05 | B9C8D7 | rateLimited |内置 |设备达到请求限制; SDK 退出直至重新启动 |

为了帮助您了解日志告诉您的内容,以下是显示真实设备更新过程的示例序列:

这是日志中健康更新的样子:

时间设备 ID行动版本这意味着什么
10:00:01a1b2c3d4get1.2.0设备检查更新并收到版本 1.2.0 信息
10:00:0210:00:02 a1b2c3d4download_101.2.0下载已开始,完成 10%
10:00:0310:00:03 a1b2c3d4download_501.2.0下载速度为 50%
10:00:0510:00:05 a1b2c3d4download_complete1.2.0下载成功
10:00:0610:00:06 a1b2c3d4set1.2.0捆绑包已安装并激活

当设备检查但已具有最新版本时:

时间设备 ID行动版本这意味着什么
14:30:0014:30:00 e5f6g7h8noNew1.2.0设备已是最新版本,无需更新

当更新失败并且设备回滚时:

时间设备 ID行动版本这意味着什么
11:15:0011:15:00 i9j0k1l2get1.3.0设备收到更新信息
11:15:02i9j0k1l2download_complete1.3.0下载完成
11:15:0311:15:03 i9j0k1l2set1.3.0捆绑包已设置
11:15:1011:15:10 i9j0k1l2update_fail1.3.0应用程序崩溃或未调用 notifyAppReady() - 已触发回滚
11:15:11i9j0k1l2reset内置设备恢复内置版本

需要采取的行动:检查您的应用程序在成功初始化后是否调用 notifyAppReady()。有关详细信息,请参阅插件文档

当网络问题阻止下载时:|时间 |设备 ID |行动|版本 |这意味着什么 | |------|---------|--------|---------|---------------| | 09:45:00 | 09:45:00 m3n4o5p6 | get | 1.2.0 |设备收到更新信息 | | 09:45:01 | m3n4o5p6 | download_30 | 1.2.0 |下载已开始,但是… | | 09:45:15 | 09:45:15 m3n4o5p6 | download_fail | 1.2.0 |下载失败(网络超时、连接丢失等) |

需要采取的行动:设备将在下次应用程序启动时自动重试。除非这种情况经常发生,否则无需采取任何措施。

当您的帐户达到其设备限制时:

时间设备 ID行动版本这意味着什么
16:00:0016:00:00 q7r8s9t0needPlanUpgrade-在您升级或计费周期重置之前,此设备不会收到更新

需要采取行动升级您的计划 或等待下一个计费周期。

当频道设置阻止更新时:

时间设备 ID行动版本这意味着什么
12:00:0012:00:00 u1v2w3x4disableAutoUpdateToMajor2.0.0v1.x 上的设备无法自动更新到 v2.x(主要版本跳转被阻止)
12:05:0012:05:00 y5z6a7b8disableEmulator1.2.0检测到模拟器,并且通道阻止模拟器
12:10:0012:10:00 c9d0e1f2disableDevBuild1.2.0检测到开发版本,通道阻止开发版本

需要采取行动:这些是有意的保护。如果您想允许这些更新,请修改您的频道设置

这些代码来自仪表板 API (capgo/src/types/supabase.types.ts) 使用的 stats_action 枚举。如果您在 UI 中看到新代码,则它是由 SDK 或后端发出的,并根据此列表进行了验证。

幸福之路和生命周期

代码意义
get设备向 Capgo 询问当前通道清单
download_manifest_startdownload_manifest_complete清单下载开始/完成(对于增量或多文件包)
download_zip_startdownload_zip_completeZip 存档下载开始/完成
download_10download_90下载进度里程碑
download_complete整个捆绑包已下载
set捆绑包将于下次发布
reset设备恢复为内置捆绑包
delete捆绑包已从本地存储中删除
uninstall检测到应用程序卸载
app_moved_to_foregroundapp_moved_to_backgroundSDK 记录的应用程序生命周期事件
ping从设备进行健康/心跳检查
setChannelgetChannel通过 SDK 调用覆盖或获取通道

配置或策略块|代码 |为什么更新被阻止 | |--------|----------------------------------------| | disableAutoUpdatedisableAutoUpdateToMajordisableAutoUpdateToMinordisableAutoUpdateToPatchdisableAutoUpdateMetadatadisableAutoUpdateUnderNative |渠道策略禁止这种 semver 跳跃 | | disablePlatformIosdisablePlatformAndroid |频道上的平台被禁用 | | disableDevBuilddisableEmulator |不允许开发版本或模拟器 | | cannotUpdateViaPrivateChannelNoChannelOrOverridechannelMisconfigured |频道选择或覆盖失败 | | missingBundlecannotGetBundle |清单引用了无法提供的捆绑包 Capgo | | needPlanUpgrade |组织达到其计划/设备限制 | | rateLimited |请求过多; SDK 节流直至重新启动 | | blocked_by_server_urlbackend_refusalInvalidIp |服务器端规则阻止了请求 |

下载/完整性/安装失败

代码意义
download_fail捆绑包下载失败(网络或响应错误)
download_manifest_file_faildownload_manifest_checksum_faildownload_manifest_brotli_fail无法检索或验证清单文件
checksum_failchecksum_required完整性检查失败或校验和丢失
unzip_faildirectory_path_failcanonical_path_failwindows_path_fail文件系统或解压缩验证失败
decrypt_fail解密失败(加密包)
update_fail捆绑包已安装,但应用程序从未调用 notifyAppReady();回滚已触发
download_zip_* 没有后续 set下载已完成但安装阶段尚未完成

➡️ 需要更深入的每代码指导?请参阅**完整日志代码参考和调试指南**。

如果您单击特定日志条目,通常会将您带到设备页面。这使您可以查看该特定设备的完整历史记录,这对于诊断设备特定问题或了解其更新过程非常有帮助。