ALB の ActiveConnectionCount メトリクスで Maximum 統計は利用可能ですか

ALB の ActiveConnectionCount メトリクスで Maximum 統計は利用可能ですか

2026.03.06

困っていること

ALB の ActiveConnectionCount メトリクスで、一定期間内の最大同時接続数を確認したいです。

  • 直近 15 分間の最大同時 TCP 接続数を確認したい
  • CloudWatch で Maximum 統計を指定して確認したい

しかし、Maximum 統計を指定すると値は常に 0 となり、期待した最大同時接続数を確認することができません。
どのように対応すればよいでしょうか。

001

どう対応すればいいの?

ActiveConnectionCount メトリクスでは、Maximum 統計は意味のある値としては利用できません。
ActiveConnectionCount は 60 秒間隔で測定・送信される瞬間的な同時接続数のメトリクスです。
実際の同時接続数として解釈できるのは、「Period = 1 分 (60秒)」「Statistic = Sum」の組み合わせのみです。

https://docs.aws.amazon.com/ja_jp/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html

Elastic Load Balancing は、ロードバランサー経由でリクエストが伝達される場合にのみ、メトリクスを CloudWatch にレポートします。ロードバランサーを経由するリクエストがある場合、Elastic Load Balancing は 60 秒間隔でメトリクスを測定し、送信します。ロードバランサーを経由するリクエストがないか、メトリクスのデータがない場合、メトリクスは報告されません。
(略)
ActiveConnectionCount
クライアントからロードバランサーへ、およびロードバランサーからターゲットへの、アクティブな同時 TCP 接続の総数。
レポート条件: ゼロ以外の値がある
[Statistics] (統計): 唯一意味のある統計は Sum です。

なお、AWS の仕様上、Maximum を指定すると値は常に 0 となる動作となります。
また、5 分や 15 分など 1 分より長い期間で Sum を指定すると、各分の瞬間値を単純に合算した値となるため、同時接続数としては意味を持ちません。

代替案

一定期間内の最大同時接続数を確認したい場合は、

  1. 1 分 (60秒) ごとの Sum データを取得し
  2. その期間内の最大値を監視システム側で算出する

といった方法をご検討ください。
例えば、外部監視ツールやスクリプトで直近 15 個の 1 分データから最大値を求めることで、「直近 15 分間の最大同時接続数」を把握できます。

参考資料

Application Load Balancer の CloudWatch メトリクス - エラスティックロードバランシング

この記事をシェアする

FacebookHatena blogX

関連記事