Extend の可観測性入門
注釈:本資料はAI技術を用いて翻訳されています。
AccelByte Gaming Services (AGS) と Grafana Cloud の統合は、完全な Extend パッケージの一部であり、Private Cloud と Shared Cloud の両方の AGS ティアで利用できます。無料トライアルの Shared Cloud ユーザーは、ティアのロックを解除すると、Grafana Cloud およびその他すべての Extend 機能にアクセスできます。
概要
AccelByte Gaming Services (AGS) Extend は、Grafana Cloud を使用して、Extend アプリの包括的な可観測性ダッシュボードを提供します。インフラストラクチャとサービスヘルスメトリクスに焦点を当てたこれらのダッシュボードは、効果的な監視とトラブルシューティングの能力を向上させることを目的としています。Extend アプリの Grafana Cloud ダッシュボードを使用することで、アプリのパフォーマンスと動作に関する洞察を得ることができます。
無料トライアルの Shared Cloud ユーザーは、ティアのロックを解除すると、Grafana Cloud およびその他すべての Extend 機能にアクセスできます。
Extend は、各タイプの Extend アプリに対して Grafana Cloud ダッシュボードを提供しています。各アプリタイプのガイドを参照してください。
Extend ダッシュボードとは別に、AGS と Grafana Cloud の統合は、Game Health ダッシュボード、AMS ダッシュボード、カスタムダッシュボード(または顧客のリクエストと要件に基づいて作成されたダッシュボード)などの他のダッシュボードも提供します。詳細については、Grafana Cloud Observability ページを参照してください。
Grafana Cloud ダッシュボードへのアクセス
Extend アプリの詳細ページから、Grafana Cloud ダッシュボードのアクセスリンクを取得できます。次の手順に従ってください。
-
表示したい Grafana Cloud ダッシュボードを持つ Extend アプリの詳細ページに移動します。
-
App Detail テーブルの下部にある Open Grafana Cloud をクリックします。Grafana Cloud のログインページが新しいブラウザタブで開きます。
-
ログインページで、Sign in with Admin Portal ボタンをクリックし、Admin Portal の認証情報を使用してログインします。
Grafana Cloud ダッシュボードの操作方法については、各アプリタイプのガイドを参照してください。
インフラストラクチャヘルスメトリクス
Grafana スタックでは、以下のインフラストラクチャメトリクスを提供しています。
- アプリインスタンス数とステータス
- CPU 使用率
- 制限
- リクエスト
- メモリ消費量
- 制限
- リクエスト
- ストレージ
- ディスクスペース
- IOPS
- ネットワーク
- 帯域幅
- ネットワーク使用量
サービスヘルスメトリクス
Grafana スタックでは、以下のサービスメトリクスにアクセスできます。
- リクエスト数
- gRPC
- 総リクエスト数
- gRPC ステータスコードごとの総リクエスト数
- リクエストレイテンシ
- エラー率
- HTTP
- 総リクエスト数
- 総 2xx リクエスト数
- 総 4xx リクエスト数
- 総 5xx リクエスト数
- リクエストレイテンシ
- gRPC
- 受信 Kafka イベント(該当する場合)
- アプリケーション作成時間
- デプロイメント作成時間
メトリクスとログのクエリ機能
Extend アプリの開発者として、Grafana Cloud でアプリケーションのログとメトリクスを確認する機能があります。この機能は、中央スタックからの LBAC データソーシングを有効にし、専用スタックからクエリおよび取得できるようにすることで提供されます。Grafana Cloud スタックからメトリクスとログをクエリするには、次の手順に従ってください。
-
サイドバーで、Explore セクションに移動します。

-
Grafana Cloud は、取得したい正確なメトリクスまたはログデータを指定できるクエリエディタを提供します。アプリケーションのデータソースは通常、
log-<your studio name>またはmetrics-<your studio name>のパターンに従います。上部のドロップダウンにアクセスして、ログ/メトリクスのデータソースを選択できます。
-
アプリケーションデータを取得するには、ラベルフィルタを適用します。namespace ラベルを選択し、値として
extend-accelbyte-custom-serviceを選択します。時間フィルタを利用して結果を絞り込むこともできます。 -
クエリが定義されたら、右上の run query ボタンを使用してクエリを実行できます。

-
Grafana Cloud は、定義されたクエリに基づいて JSON 形式でログとメトリクスを返します。
Grafana Cloud へのログ送信
標準出力にログを書き込むことで、Extend アプリから Grafana Cloud にログを送信できます。
- C#
- Go
- Java
- Python
gRPC サービス実装クラスで ILogger<YourClassName> オブジェクトを使用してログを書き込みます。
// Import namespace
using Microsoft.Extensions.Logging;
// Declare private logger object
private readonly ILogger<YourClassName> _Logger;
// Get logger object in constructor
public YourClassName(
...
ILogger<YourClassName> logger,
...
)
{
...
_Logger = logger;
...
}
// Use it within the method
_Logger.LogInformation("your log message");
// Import required package
import (
"github.com/sirupsen/logrus"
)
// Write log
logrus.Infof("your log message")
// Import Slf4j package
import lombok.extern.slf4j.Slf4j;
// Add Slf4J annotation to your service class
@Slf4j
// Use it within the method
log.info("your log message");
Slf4j アノテーションの詳細については、Project Lombok ドキュメントを参照してください。
# Import logger
from logging import Logger
# init logger in service class
def __init__(
..., logger: Optional[Logger], ...
) -> None:
...
self.logger = logger
...
# Use it within the function
self.logger.info("your log message")
可視化
Extend アプリの開発者として、利用可能なダッシュボードを活用して Extend サービスのヘルスを可視化できます。Extend アプリがプロビジョニングされた後、以下の定型ダッシュボードが作成されることが期待できます。
ダッシュボード
ダッシュボードは次のパスでアクセスできます:https://<your-grafana-dedicated-stack>.grafana.net/dashboards。例として、スタック URL は次のようになります:https://accelbyte12345.grafana.net/dashboards

カスタムメトリクス
アプリのパフォーマンスに関するさらなる洞察を得るために、サービス固有のメトリクスを注釈付けして公開する機能があります。これらのメトリクスは、公開することを選択したメトリクスと、Extend プラットフォームによって提供されるメトリクスになります。これらのメトリクスのサポートとドキュメントは近日中に追加される予定です。