クラッシュレポート

クラッシュレポート

App Store の評価が下がる前に、クラッシュを検知・分類・解決

無料で始める

スマートグルーピング

同一 Fingerprint のクラッシュが自動的にグループ化され、何千もの重複レポートではなく 1 つの対処可能な問題として表示されます。

Breadcrumb トレイル

クラッシュ直前の最大 50 件の Breadcrumb イベントにより、プレイヤーが何をしていたかを正確に把握し、問題を確実に再現できます。

クラッシュフリーセッション率

クラッシュなしで完了したセッションの割合を追跡し、問題を解決するたびに改善を確認できます。

クイック統合

クイック統合

ゲーム実行中

セッション
00:14:32
クラッシュフリー率
98.2%
Unity (C#)
// Unity C#: Crash Reporting
using System;
using System.Collections.Generic;
using PM.horizOn.Cloud.Manager;

// Once at startup: registers the crash session and catches unhandled exceptions
CrashManager.Instance.StartCapture();
CrashManager.Instance.SetUserId(UserManager.Instance.CurrentUser.UserId);

// Context that is sent with the next report
CrashManager.Instance.RecordBreadcrumb("scene", "Entered world_3");

// Report a handled exception as NON_FATAL
try { LoadTextures(); }
catch (Exception ex)
{
    CrashManager.Instance.RecordException(ex, new Dictionary<string, string> { ["asset"] = "boss_texture" });
}
REST
# REST API: Crash Reporting

# Create a crash session at app start
curl -X POST https://horizon.pm/api/v1/app/crash-reports/session \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"sessionId":"SESSION_ID","appVersion":"1.2.3","platform":"Android"}'

# Report a crash (type CRASH, NON_FATAL or ANR)
curl -X POST https://horizon.pm/api/v1/app/crash-reports/create \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "sessionId": "SESSION_ID",
    "type": "CRASH",
    "message": "NullReferenceException in PlayerController",
    "fingerprint": "PlayerController.NullRef",
    "appVersion": "1.2.3",
    "sdkVersion": "1.0.0",
    "platform": "Android",
    "os": "Android 14",
    "deviceModel": "Pixel 8"
  }'

これらの例では、Unity SDK(C#)とREST APIを使っています。GodotとUnrealでも、それぞれのSDKで同じ呼び出しができます: クイックスタートを参照

よくある質問

よくある質問

統合の準備はできましたか?

horizOn で今日からゲームバックエンドを構築しましょう。無料プラン付き。