メトリクスストリーム (ベータ版)
監視できる項目
- API リクエスト量: Authentication API と Management API への総リクエスト数を監視します。
- エラー率: 統合に影響するクライアントエラーとサーバーエラーを特定します。
- レート制限への到達: アプリケーションがレート制限に達したタイミングを検出します。
- 地理的分布: 国別のトラフィックパターンを分析します。
- 認証フロー: グラントタイプと接続の使用状況を追跡します。
ユースケース
レート制限の問題を特定する
API 障害のトラブルシューティング
キャパシティを計画する
前提条件
メトリックストリームを設定する前に、次のものが必要です。-
Auth0 Management API へのアクセス: 次の権限を持つ Machine-to-Machine (M2M) アプリケーションを作成します。
read:event_streamscreate:event_streamsupdate:event_streamsdelete:event_streamsread:event_deliveriesupdate:event_deliveries
- Auth0 CLI: API コマンドでメトリックストリームを設定するには、Auth0 CLI をインストールします。
- モニタリングプラットフォームのアカウント: サポートされている送信先 のいずれかで利用可能な有効なアカウント。
メトリクス リファレンス
auth0.api_request.count
| タグ名 | 必須 | 説明 |
|---|---|---|
api | はい | API の種類: AUTHENTICATION または MANAGEMENT |
operation_name | はい | HTTP メソッドとパス (例: POST /oauth/token) |
operation_result | はい | 結果: SUCCESS または FAILURE |
tenant | はい | ご利用の Auth0 テナント名 |
failure_code | いいえ | 失敗理由: RATE_LIMIT、ANOMALY_DETECTION、または CLIENT_SERVER_ERROR |
country_code | いいえ | リクエスト元 IP アドレスに基づく ISO 国コード |
client_id | いいえ | アプリケーションのクライアントID (Authentication API のみ) |
connection_id | いいえ | 接続ID (Authentication API のみ) |
grant_type | いいえ | OAuth 2.0 のグラントタイプ (Authentication API のみ) |
batch_seq | はい | タグとタイムスタンプが同一のメトリクスに対するシーケンス番号 (一時的なもので、ベータ終了後に削除されます) |
メトリクスストリームには、システムの過負荷を防ぐため、エッジで Auth0 の Web Application Firewall (WAF) によってキャッシュまたはブロックされた API 呼び出しは含まれません。
列挙値
AUTHENTICATION- Authentication API へのリクエストMANAGEMENT- Management API へのリクエスト
SUCCESS- リクエストは正常に完了しましたFAILURE- クライアントエラーまたはサーバーエラーにより、リクエストが失敗しました
operation_result が FAILURE の場合にのみ存在)
RATE_LIMIT- リクエストがレート制限を超えましたANOMALY_DETECTION- Auth0 の攻撃対策によってブロックされましたCLIENT_SERVER_ERROR- HTTP 4xx または 5xx エラー
対応している送信先
Datadog
Datadog の Metrics API とのネイティブ統合
New Relic
OpenTelemetry Protocol (OTLP) 経由で送信
Splunk
OpenTelemetry Protocol (OTLP) 経由で送信
Datadog を設定する
前提条件
- 有効なDatadog アカウント
- Datadog API キー (Datadog の Organization Settings > API Keys で生成)
- Datadog サイト (
app.datadoghq.comにはUS1、app.datadoghq.euにはEU、us3.datadoghq.comにはUS3などのリージョン識別子)
メトリックストリームを作成
- Dashboard
- CLI
メトリクスストリーム に移動します。
- Auth0 Dashboard > Monitoring > メトリクスストリーム に移動します。
- + Create Metric Stream を選択します。
- Datadog を選択します。
- 名前: わかりやすい名前 (例:
datadog-production) を入力します。 - Datadog Site: ドロップダウンから Datadog のリージョンを選択します。
- app.datadoghq.com の場合は
US1 - us3.datadoghq.com の場合は
US3 - us5.datadoghq.com の場合は
US5 - app.datadoghq.eu の場合は
EU - ap1.datadoghq.com の場合は
AP1
- app.datadoghq.com の場合は
- Datadog API Key: Datadog API キーを貼り付けます。
- Save を選択します。
Datadog で確認する
auth0.api_request.count を検索してデータを確認します。
ストリームを管理する
- Dashboard
- CLI
すべてのストリームを表示する:
- Auth0 Dashboard > Monitoring > メトリクスストリーム に移動します。
- 設定済みのすべてのストリームが、Destination、Status、Name、Subscriptions とともに一覧表示されます。
- 一覧からストリーム名を選択します。
- 設定を更新します。
- Save を選択します。
- ストリームを有効または無効にするには、Status 列の Toggle switch を切り替えます。
- 無効化したストリームはメトリクスの送信を停止しますが、設定は保持されます。
- 一覧からストリーム名を選択します。
- 設定ページの下部にある Delete を選択します。
- 削除を確認します。
New Relic を設定する
New Relic の認証情報を取得する
OTLP エンドポイントを確認する
リージョン固有のエンドポイントを確認するには、New Relic の OTLP ドキュメントを参照してください。
- US:
https://otlp.nr-data.net - EU:
https://otlp.eu01.nr-data.net
メトリックストリームを作成する
- Dashboard
- CLI
メトリクスストリーム に移動します。
- Auth0 Dashboard で Monitoring > メトリクスストリーム に移動します。
- + Create Metric Stream を選択します。
- OpenTelemetry を選択します。
- Name: わかりやすい名前を入力します (例:
newrelic-production) 。 - Protocol: ドロップダウンから HTTP を選択します。
- OTLP エンドポイント: New Relic の OTLP エンドポイントを貼り付けます (例:
https://otlp.nr-data.net) 。 - 認証方法: ドロップダウンから API Key を選択します。
- Header Name:
api-keyを入力します。 - API Key: 前の手順でコピーした New Relic の Ingest License Key を貼り付けます。
- Save を選択します。
Splunk を設定する
Splunk の認証情報を取得する
OTLP エンドポイントを確認する
エンドポイントを確認するには、Splunk の OTLP HTTP Exporter ドキュメントを参照してください。エンドポイントの形式は次のとおりです。
<REALM> を Splunk の realm (例: us1、eu0、jp0) に置き換えます。メトリックストリームを作成する
- Dashboard
- CLI
メトリクスストリーム に移動します。
- Auth0 Dashboard の Monitoring > メトリクスストリーム に移動します。
- + Create Metric Stream を選択します。
- OpenTelemetry を選択します。
- 名前: わかりやすい名前を入力します (例:
splunk-production) 。 - プロトコル: ドロップダウンから HTTP を選択します。
- OTLP エンドポイント: Splunk の OTLP エンドポイントを貼り付けます (例:
https://ingest.us1.signalfx.com/v2/datapoint/otlp) 。 - 認証方法: ドロップダウンから API Key を選択します。
- ヘッダー名:
X-SF-TOKENを入力します。 - API Key: Splunk のアクセストークンを貼り付けます (前述のステップ 2 で取得) 。
- Save を選択します。
メトリクスのカーディナリティについて
| タグ | カーディナリティ | 影響 |
|---|---|---|
api | 低 | 一意の値は 2 つ (Authentication、Management) |
operation_name | 中 | 使用する API オペレーションによって異なります |
operation_result | 低 | 一意の値は 2 つ (成功、失敗) |
tenant | 中 | Auth0テナントごとに 1 つ |
failure_code | 低 | 一意の値は 3 つ (失敗時のみ) |
country_code | 中~高 | 地理的な分布によって異なります |
client_id | 高 | アプリケーションクライアントごとに 1 つ |
connection_id | 高 | IDプロバイダー接続ごとに 1 つ |
grant_type | 低 | OAuth 2.0 のグラントタイプは限定的 |
batch_seq | 低 | 一時的なタグ (ベータ版終了後に削除) |
トラブルシューティング
メトリクスが表示されない
- Dashboard
- CLI
- Auth0 Dashboard で Monitoring > メトリクスストリーム に移動します。
- 一覧から対象のメトリックストリームを探します。
- Status 列が Enabled になっていることを確認します。
- ストリーム名を選択して詳細な設定を表示し、各設定を確認します。
- Datadog: API キーが有効で、サイト URL が Datadog のリージョンと一致していることを確認します
- OTLP destinations: エンドポイント URL、認証トークン、ヘッダー名が正しいことを確認します
監視コストが高い
- クエリやダッシュボードで使用しているタグを確認します。
- 集計から
client_idとconnection_idを除外することを検討します。 - 取り込まれるメトリクスを減らすために、監視プラットフォームでサンプリングやフィルタリングを使用します。
- 細かいタグではなく、
apiやoperation_resultのような上位レベルのタグで集計します。