エラーレポートでは、サーバーとクライアントの最新のLuauシステムエラーや警告を確認できます。ゲームを更新する前後にエラーレポートを監視して、潜在的な問題を早期に特定することができます。
エラーレポートを表示する
ゲームのエラーレポートを表示するには:
- クリエイターダッシュボードのCreationsページに移動し、あなたのゲームを選択します。
- モニタリングの下でエラーレポートを選択します。
個別の体験またはグループ所有の体験の分析情報を表示できます。後者を表示するには、分析のグループ権限を持っている必要があります。
エラーと警告を監視する
エラーレポートに次のフィルターやトグルを適用できます:
- 日付範囲 — 過去1時間、過去1日、過去7日、または過去30日でフィルター。
- 場所 — 場所でフィルター。
- バージョン表示 — エラーおよび警告チャートに場所バージョンの注釈を追加します。
- 重大度 — エラー、警告、またはその両方を表示するようフィルター。
- プラットフォーム — 特定のデバイスからのクライアントエラーを表示するようフィルター。
- OS — 特定のオペレーティングシステムからのクライアントエラーを表示するようフィルター。
- 以降の新しいエラー — 特定のバージョン以降の新しいエラーと警告のみを表示するようフィルター。
フィルターとトグルの下には、サーバー、クライアント、および合計のエラーと警告数を表示するチャートがあります。このチャートを使用して、時間の経過に伴うエラーと警告の増加を確認してください。エラーと警告の大きな急増が見られた場合は、エラーレポートテーブルを使用してトラブルシューティングを行います。

エラーと警告のトラブルシューティング
エラーと警告テーブルには次の列があります:
| 列名 | 説明 |
|---|---|
| カウント | エラーまたは警告の数。 |
| 重大度 | エラーまたは警告のラベル。 |
| 種類 | サーバーまたはクライアントのラベル。 |
| メッセージ | エラーまたは警告のメッセージ。 |
| 初めて確認された | メッセージの最初の確認タイムスタンプ。 |
| 初めて確認されたバージョン | 場所が選択されたときにのみ表示されます。メッセージが記録された最初のバージョンを示します。 |

エラーまたは警告のスタックトレースを表示する
エラーまたは警告にドロップダウンが表示される場合は、クリックして展開し、対応するスタックトレースを見ることができます。スタックトレースは、例外がスローされたときにゲームが実行していた呼び出しのリストです。これにより、何が間違っているのかを把握するのに役立ちます。
カスタムルール
カスタムルールを使用すると、エラーや警告を自動的に無視またはグループ化するためのregexまたは正確な文字列パターンを定義できます。これにより、エラーレポートの信号対雑音比を管理するのに役立ちます。体験ごとに最大100ルールを作成できます。ルールは優先順位に基づいて上から下へ評価されます。エラーがルールに一致すると、それ以降の処理は停止します。
ルールのアクション
各ルールには2つのアクションのいずれかがあります:
| アクション | 挙動 |
|---|---|
| 無視 | チャートとテーブルから一致するエラーを非表示にします。不可避のエンジン音エラーやレガシーの印刷ステートメントなど、永続的な雑音に使用します。 |
| グループ | 一致するすべてのエラーをカスタムグループ名(例: "ネットワークの問題"、"オーディオスパム")の下に統合します。グループ名はテーブルに単一の行として表示されます。 |
ルールを作成する
ルールを作成する方法は2つあります:
エラー テーブルから (インライン):
- 任意のエラー行のコンテキストメニュー(三点リーダー)をクリックします。
- 無視を選択します。

ルールタブから:
- エラーレポートページのルールタブに移動します。
- ルールを作成をクリックします。
- パターン(正確な文字列またはregex)を入力します。
- アクションを選択: 無視 または グループ → [グループ名]。
- ルールを保存します。

ルール作成フィールド
| フィールド | 説明 |
|---|---|
| パターン | エラーメッセージに対して一致させる正確な文字列または正規表現。 |
| アクション | 無視(エラーを非表示)または グループ → カスタムグループ名を入力します。 |

ルールは、ルールタブの優先順位に基づいて上から下へ評価されます。エラーがルールに一致すると、そのルールのアクションが実行され、そのエラーに対してはそれ以上のルールが評価されません。これにより、エラーが1つのルールによってグループ化され、その後のルールによって無視されるといった競合が防止されます。
ルールは保存された後に記録されたエラーのみ影響します。ルールが変更されると、チャートに注釈が表示されます。
正規表現の基本
正規表現 (regex) はテキストにマッチするパターンです:
| 構文 | 意味 | 例 |
|---|---|---|
| . | 任意の1文字 | H.t は "Hat", "Hit", "Hot" にマッチします。 |
| * | 前の文字が0回以上出現する | go*d は "gd", "god", "good" にマッチします。 |
| + | 前の文字が1回以上出現する | 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: ..." の両方にマッチします。 |
クイックヒント:
- 特定のエラーを1つ捕まえたいときは、最初に正確なマッチ(フルエラーストリング)から始めてください。
- 類似のエラーのファミリーを捕まえたいときは、regexを使用してください(例: アセットIDに関係なくすべてのサウンド読み込み失敗)。
- 保存する前に、いくつかの実際のエラーストリングに対してパターンをテストして、期待するものがキャッチされるか確認してください。
システムは、正規表現パターンに対して2つのルールを適用します:
- 繰り返しグループ内にリピーター(+ または *)を置くことはできません。例えば、(a+)* や (\w+)+ は拒否されます。
- アンカーテキストで始めなければなりません: パターンは .* や .+ のようなワイルドカードで始まることはできません。パターンは具体的な文字またはアンカー(^ またはリテラル文字列)で始まる必要があります。
エラーレポートを整理するためのルールの例
多くの別々のエラー行を表示する代わりに、関連するエラーを1つのグループ名の下に統合します:
| 使用例 | エラー例 | パターン | アクション |
|---|---|---|---|
| すべてのネットワークエラー | HttpError: ConnectFail, HttpError: Timedout | HttpError:.* | グループ → "ネットワークの問題" |
| データストア警告 | DataStore request was added to queue, DataStoreService: ... | DataStore | グループ → "データストア警告" |
| プレイヤーGUIエラー | Players.Player1.PlayerGui.Shop:12: attempt to index nil | Players\.\w+\.PlayerGui | グループ → "PlayerGui エラー" |
| カスタムUIフレームワーク | [UIManager] Button render failed, [UIManager] Layout overflow | \[UIManager\].* | グループ → "UIシステム" |
エラー追跡の制限
システムは、カウントで最大500のユニークエラーと500のユニーク警告、およびバージョンごとに上位100の新しいエラーを追跡します。これらのカウントは6時間ごとにリセットされます。これらの制限内で有用なエラー追跡を最大化するには:
- エラーメッセージからユーザーID、座標、またはタイムスタンプなどのユニーク識別子を削除します。Player 12345 failed to load と Player 67890 failed to load は2つの別々のエントリとしてカウントされます。Player failed to load としてログに記録すると、1つのエントリに統合されてカウントが増えます。
- カスタムルールを使用して、動的値のみによって異なる関連エラーをグループ化します。
エラーと警告を解決する
エラーレポートページからエラーを調査する際は、以下のアプローチを使用してください:
- スタックトレースをレビュー — エラー行を展開して呼び出し経路を確認し、エラーが発生した正確なスクリプトと行番号を特定します。
- 最近の更新を確認 — 最近の更新以降の新しいエラーを監視します。
- 組み込みツールを使用:
- 開発者コンソール (F9 インゲーム): リアルタイムでライブエラーを表示し、修正をテストします。
- スクリプトプロファイラ: 費用のかかる操作によって引き起こされるパフォーマンス関連のエラーを特定します。
- スタジオの出力ウィンドウ — 公開前に開発中のエラーをキャッチします。
- 内訳を使用 — エラーが特定のプラットフォーム(デスクトップ、モバイル、コンソール)またはOS(Windows、macOS、iOS、Android)に特有であるかどうかを確認します。
- コミュニティのフィードバックを収集 — コミュニティのDiscordやDevForumの投稿がある場合、プレイヤーが問題を報告しているかどうか、どのデバイスや地域が影響を受けているかをチェックします。