メインコンテンツまでスキップ

configure-turn-server-metric-data

Last updated on February 4, 2026

注釈:本資料はAI技術を用いて翻訳されています。

AGS Private Cloud

この機能は、AccelByte Gaming Services (AGS) Private Cloud でのみ利用できます。

概要

ゲームクライアントは、特定のメトリクスを AccelByte Gaming Services (AGS) バックエンドに送信でき、開発者の可観測性を向上させることができます。ただし、ピアツーピア (P2P) ネットワークは分散型パラダイムを採用しているため、現在の本番環境のステータスを観察することが困難です。TURN サーバーを使用すると、P2P ネットワークのこの欠点を軽減し、次の項目の可観測性を提供できます。

  • サーバーのダウン
  • サーバーが高負荷状態にある期間
  • リレーを使用している P2P ゲームセッションの割合
  • ホストから切断されたゲームクライアントの数とその理由(ホストまたはクライアントの切断)
  • CCU、サーバー接続、セッションの数

この記事では、AGS Game SDK を使用して、TURN サーバーを使用してゲームから AGS バックエンドに特定のメトリクスデータを送信する方法を説明します。

Grafana を通じてサーバーステータスを監視する

ゲームのサーバーのステータスを表示するには、AGS Admin Portal からアクセスできる提供された Grafana ツールを使用します。これを行うには、以下の手順に従ってください。

  1. AGS Admin Portal にログインし、ゲームネームスペースに移動します。
  2. Development Utilities > Grafana Cloud に移動します。Grafana ログインページにリダイレクトされます。
  3. AGS Admin Portal の認証情報を使用して Grafana Cloud にログインします。
  4. Grafana Cloud で、Dashboards > Play Services Overview > Play Services - Overview に移動します。
  5. Grafana の Play Services - Overview ページで、TURN Server を展開します。
  6. これらのパネルを使用してゲームの TURN サーバーを監視し、必要に応じてクエリパラメータを調整します。

TURN サーバーメトリクスデータの送信を実装する

これらのセクションでは、コードサンプルを提供し、TURN サーバーから AGS バックエンドにメトリクスデータを送信する方法を実装する方法を示します。

"Connect" メトリクスデータを送信する

以下のメソッドは、プレイヤーがホストに正常に接続した後にトリガーする必要があります。

ヒント

selectedRegion 変数には、最も近い TURN サーバーリージョン を割り当てることをお勧めします。

    string selectedRegion = "";
P2PConnectionType connectType = P2PConnectionType.Host;

AccelByteSDK.GetClientRegistry().GetApi().GetTurnManager().SendMetric(selectedRegion, connectType
, result =>
{
if (result.IsError)
{
// Do something if operation fails
UnityEngine.Debug.LogError($"failed to send connection metric [{result.Error.Code}]:{result.Error.Message}");
return;
}

// Do something if the operation is a success
});

"Disconnect" メトリクスデータを送信する

以下のメソッドは、プレイヤーがホストから切断された後にトリガーする必要があります。

    AccelByteSDK.GetClientRegistry().GetApi().GetTurnManager().SendDisconnectedMetric(result =>
{
if (result.IsError)
{
//Do something if operation fails
UnityEngine.Debug.LogError($"failed to send disconnection metric [{result.Error.Code}]:{result.Error.Message}");
return;
}

// Do something if the operation is a success
});