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

テナント統計管理

idp-serverのテナント統計機能の概要について説明します。

テナント統計とは

テナント統計(Tenant Statistics) とは、各テナントのユーザー活動やシステム利用状況を集計・可視化するための機能です。

主な目的

  • 利用状況の可視化: DAU/MAU/YAU、ログイン数などの把握
  • 容量計画: テナントごとのリソース使用状況の追跡
  • 課金基盤: MAU/YAUベースの従量課金データ提供
  • セキュリティ監視: 異常なアクティビティの検知

収集されるメトリクス

アクティブユーザー数

メトリクス説明集計レベル
DAU (Daily Active Users)日次アクティブユーザー数日次
MAU (Monthly Active Users)月次アクティブユーザー数月次
YAU (Yearly Active Users)年次アクティブユーザー数年次(会計年度対応)

会計年度対応: YAUはテナントごとに設定された会計年度(Fiscal Year)で集計されます。 例: 日本企業(4月開始)、米国企業(10月開始)など、テナント固有の会計年度に基づいてYAUをカウントします。

DAU/MAU/YAU の関係

                          YAU (Yearly Active Users)
┌─────────────────────────────────────┐
│ 会計年度内の │
│ ユニークユーザー総数 │
│ │
┌───────────────┼───────────────┐ │
│ MAU (4月) │ MAU (5月) │ ... MAU (3月) │
│ ┌─────────┐ │ ┌─────────┐ │ ┌─────────┐ │
│ │ DAU 1-30│ │ │ DAU 1-31│ │ │ DAU 1-31│ │
│ └─────────┘ │ └─────────┘ │ └─────────┘ │
└───────────────┴───────────────┴──────────────────────┘

ポイント:

  • DAUは日ごとのユニークユーザー数
  • MAUは月内のユニークユーザー数(DAUの合計ではない)
  • YAUは会計年度内のユニークユーザー数(MAUの合計ではない)

DAU/MAU/YAU 推移イメージ(2年分)

ユーザー数

│ ┌─────── 2024年度 ───────┐┌─────── 2025年度 ───────┐
│ ││
800├ ●━━━●│ ●━━━● YAU
│ ●━━━● ││ ●━━━●
│ ●━━━● ││ ●━━━●
│ ●━━━● ││ ●━━━●
│ ●━━━● ││ ●━━━●
│ ●━━━● ││●━━━● ← 年度切替でリセット
│ ││
150├──●───●───●───●───●───●───●──●───●───●───●───●─ MAU
│ ╱ ╲ ╱ ╲ ╱ ╲ ╱ ╲ ╱ ╲ ╱ ╲ ╱ ╲╱ ╲ ╱ ╲ ╱ ╲ ╱ ╲ ╱ ╲
│╱ ╲ ╲ ╲ ╲ ╲ ╲ ╲ ╲ ╲ ╲ ╲
│ ││
50├╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲ DAU
│ ││
└──────────────────────────┴┴──────────────────────────→ 時間
4月 6月 8月 10月 12月 2月 4月 6月 8月 10月 12月 2月
←───── 2024年度 ─────→│←───── 2025年度 ─────→
年度境界

特徴:

  • DAU: 日々変動(平日/休日、イベント等で上下)、年度をまたいでも継続
  • MAU: 毎月リセットされ、月内で増加
  • YAU: 年度初にリセットされ、年度内で単調増加

年度境界: 会計年度が切り替わるタイミング(例: 4月1日)でYAUはリセットされます。 DAU/MAUは通常通り継続してカウントされます。

イベントカウント

メトリクス説明
login_successログイン成功回数
issue_token_successトークン発行成功回数
refresh_token_successトークンリフレッシュ成功回数
inspect_token_successトークン検証成功回数
その他セキュリティイベントイベント種別ごとにカウント

アクティブユーザーとしてカウントされるイベント

以下のイベントが発生したユーザーがアクティブユーザーとしてカウントされます:

  • login_success - ログイン成功
  • issue_token_success - トークン発行成功
  • refresh_token_success - トークンリフレッシュ成功
  • inspect_token_success - トークン検証成功

ユースケース

1. ダッシュボード表示

テナント管理者が自テナントの利用状況を可視化します。

表示項目例:

  • DAU/MAU/YAU トレンドグラフ
  • 認証成功率
  • トークン発行数推移

2. MAU/YAUベース課金

月次・年次アクティブユーザー数に基づく従量課金に利用できます。

3. セキュリティ監視

異常なアクティビティを検知します。

検知パターン例:

  • DAUの急増(ボット攻撃の可能性)
  • ログイン失敗率の急上昇
  • 特定時間帯への集中

データ保持期間

データ種別保持期間備考
日次統計(DAU詳細)90日
月次統計(MAU詳細)13ヶ月YoY比較用
年次統計(YAU詳細)60ヶ月(5年)会計年度対応のため月単位パーティション

アーカイブ方式: 保持期間を過ぎたデータは削除されず、archiveスキーマに移動されます。 これにより監査・コンプライアンス要件に対応しつつ、必要時にアーカイブデータへアクセス可能です。


統計機能の有効化

統計データの記録はテナントごとに設定で有効化できます。デフォルトでは無効になっています。

{
"security_event_log_config": {
"statistics_enabled": true
}
}
設定デフォルト説明
statistics_enabledfalse統計データ記録を有効化

注意: 統計機能を有効にすると、セキュリティイベント発生時にデータベースへの書き込みが追加で発生します。高負荷環境では、パフォーマンスへの影響を考慮してください。


統計更新のタイミング

統計データはリアルタイムで更新されます。セキュリティイベント(ログイン成功など)が発生するたびに、対応する統計値が増分更新されます。

バッチ処理による遅延はありません。


関連ドキュメント