错误报告

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

错误报告 让您查看最新的 Luau 系统错误和警告,包括服务器和客户端的错误。在更新游戏之前和之后监控您的错误报告,以尽早识别潜在问题。

查看您的错误报告

要查看您游戏的错误报告:

  • 创作者仪表板创作 页面中导航并选择您的游戏。
  • 监控 下,选择 错误报告

您可以查看单个或组所有者体验的分析数据。要查看后者,您需要拥有 分析的组权限

监控错误和警告

您可以对错误报告应用以下过滤器和开关:

  • 日期范围 — 过滤为过去 1 小时、过去 1 天、过去 7 天或过去 30 天。
  • 地点 — 按地点过滤。
  • 显示版本 — 在错误和警告图表中添加地点版本注释。
  • 严重性 — 过滤以显示错误、警告或两者。
  • 平台 — 过滤以显示来自特定设备的客户端错误。
  • 操作系统 — 过滤以显示来自特定操作系统的客户端错误。
  • 自某版本以来的新错误 — 过滤仅显示自某一特定版本以来的新错误和警告。

在过滤器和开关下方,图表显示服务器、客户端和总的错误和警告数量。使用此图表查看错误和警告随着时间的推移是否增加。如果您看到错误和警告的激增,请使用错误报告表进行故障排除。

按类别随时间变化的错误和警告

故障排除错误和警告

错误和警告 表格包含以下列:

列名描述
计数错误或警告的数量。
严重性错误或警告标签。
类型服务器或客户端标签。
消息错误或警告消息。
首次出现于消息的首次出现时间戳。
首次出现版本仅在选择了地点时可用。显示记录该消息的第一个版本。
错误报告表

查看错误或警告的堆栈跟踪

如果您在错误或警告上看到下拉菜单,请单击展开以查看其相应的 堆栈跟踪。堆栈跟踪是您的游戏在抛出异常时执行的调用列表。这可以帮助您弄清楚出现了什么问题。

自定义规则

自定义规则允许您定义正则表达式或精确字符串模式,以自动忽略或分组错误和警告。这有助于您管理错误报告中的信号与噪声比。每个体验最多可以创建 100 个规则。规则按优先顺序从上到下进行评估。一旦错误匹配某个规则,则不再处理后续规则。

规则操作

每个规则有两种操作之一:

操作行为
忽略从图表和表中隐藏匹配的错误。用于永久噪声,如不可避免的引擎声音错误或遗留的打印语句。
分组将所有匹配的错误合并到一个自定义组名下(例如,“网络问题”、“音频垃圾”)。组名作为一个单行出现在表格中。

创建规则

有两种方法可以创建规则:

从错误表(内联):

  1. 单击任何错误行上的上下文菜单(三个点)。
  2. 选择 忽略
从错误表中忽略错误

从规则选项卡:

  1. 在错误报告页面上导航到 规则 选项卡。
  2. 单击 创建规则
  3. 输入一个模式(精确字符串或正则表达式)。
  4. 选择一个操作:忽略分组 → [组名]。
  5. 保存规则。
规则选项卡显示示例规则

规则创建字段

字段描述
模式要与错误消息匹配的精确字符串或正则表达式。
操作选择 忽略(隐藏错误)或 分组 → 输入自定义组名。
创建规则对话框

规则根据优先顺序从上到下进行评估。一旦错误匹配某个规则,就会执行该规则的操作,而不再为该错误评估其他规则。这可以防止冲突,例如一个规则对错误分组,而后续规则又忽略该错误。

规则仅影响保存后记录的错误。当规则被修改时,图表上会出现注释。

正则表达式基础

正则表达式(regex)是一个匹配文本的模式:

语法意义示例
.任何单个字符H.t 匹配 "Hat", "Hit", "Hot"
*零个或多个前面的字符go*d 匹配 "gd", "god", "good"
+一个或多个前面的字符go+d 匹配 "god", "good",但不匹配 "gd"
.*任何字符序列(通配符)Failed.*load 匹配 "Failed to load" 和 "Failed xyz load"
\d任何数字(0-9)v\d+ 匹配 "v1", "v123", "v4488"
\w任何单词字符(字母、数字、下划线)\w+ 匹配 "Player123", "my_var"
^字符串的开始^HTTP 匹配以 "HTTP" 开头的错误
\/转义的斜杠rbxassetid:\/\/ 匹配 "rbxassetid://"
\[\]转义方括号(文字匹配)\[Knit\] 匹配 "[Knit]"
(a|b)匹配 "a" 或 "b"(Error|Warning):.* 匹配 "Error: ..." 和 "Warning: ..."

快速提示:

  • 如果您只想捕获一个特定错误,请从精确匹配开始(完整错误字符串)。
  • 当您想捕获一系列相似错误时,请使用正则表达式(例如,所有声音加载失败,无论资产 ID 为何)。
  • 在保存之前,请测试您的模式与一些实际的错误字符串,以确保它捕获您预期的内容。

系统对您的正则表达式模式强加两个规则:

  • 您不能在重复组内放置重复符号(+*)。例如,(a+)*(\w+)+ 会被拒绝。
  • 必须以锚定文本开始:模式不能以通配符如 .*.+ 开头。您的模式必须以具体字符或锚(如 ^ 或文字字符串)开始。

组织错误报告的规则示例

将相关错误合并为一个组名,而不是显示数十个单独的错误行:

用例示例错误模式操作
所有网络错误HttpError: ConnectFail, HttpError: TimedoutHttpError:.*分组 → "网络问题"
数据存储警告DataStore request was added to queue, DataStoreService: ...DataStore分组 → "数据存储警告"
玩家 GUI 错误Players.Player1.PlayerGui.Shop:12: attempt to index nilPlayers\.\w+\.PlayerGui分组 → "玩家 GUI 错误"
自定义 UI 框架[UIManager] Button render failed, [UIManager] Layout overflow\[UIManager\].*分组 → "UI 系统"

错误跟踪限制

该系统最多跟踪 500 个唯一错误和 500 个唯一警告,以及每个版本的前 100 个新错误。该计数每 6 小时重置。为在这些限制内最大化有用的错误跟踪:

  • 从错误消息中移除唯一标识符,如用户 ID、坐标或时间戳。错误信息 Player 12345 failed to loadPlayer 67890 failed to load 被视为两个单独的条目。如果您记录它们为 Player failed to load,它们将合并为一个条目,并计数增加。
  • 使用自定义规则对仅按动态值不同的相关错误进行分组。

解决错误和警告

在从错误报告页面调查错误时,使用以下方法:

  1. 查看堆栈跟踪 — 展开错误行以查看调用路径,确定发生错误的确切脚本和行号。
  2. 检查近期更新 — 监控自您最近更新以来的新错误。
  3. 使用内置工具
    • 开发者控制台(游戏中 F9):实时查看实时错误并测试修复。
    • 脚本分析器:识别由于昂贵操作导致的性能相关错误。
    • 工作室中的输出窗口 — 在发布之前抓取开发期间的错误。
  4. 使用细分 — 检查错误是否特定于某个平台(桌面、移动、控制台)或操作系统(Windows、macOS、iOS、Android)。
  5. 收集社区反馈 — 如果您有社区 Discord 或 DevForum 帖子,请检查玩家是否报告该问题以及哪些设备或地区受到影响。
©2026 Roblox Corporation、Roblox、Roblox 标志及 Powering Imagination 是我们在美国及其他国家或地区的注册与未注册商标。