View a markdown version of this page

推奨 PromQL アラーム - Amazon CloudWatch

推奨 PromQL アラーム

これらの PromQL アラームは、従来の推奨アラームと同等のものとして使用します。CloudWatch OTLP エンドポイントを通じて取り込まれたメトリクスに対して評価される PromQL インスタントクエリを使用して、同じメトリクスをモニタリングします。

PromQL アラームは EvaluationCriteriaPromQLCriteria を併用します。クラシックメトリクスアラームとは異なり、しきい値は PromQL クエリ式に直接埋め込まれます。

  • 保留期間 – アラームが ALARM 状態に移行する前に、時系列が連続して超過しなければならない期間 (秒)。

  • 復旧期間 – アラームが OK 状態に戻る前に、すべての時系列が超過を停止しなければならない期間 (秒)。

  • 評価間隔 – CloudWatch が PromQL クエリを実行する頻度 (秒)。

注記

これらのアラームには、CloudWatch OTLP エンドポイントを通じて発行されるメトリクスが必要です。詳細については、「PromQL アラーム」を参照してください。

これらのアラームは AWS CloudFormation を使用してデプロイすることができます。AWS::CloudWatch::Alarm リソースでプロパティ EvaluationCriteria および PromQLCriteria を使用します。

REST API

4XXError

ラベル: ApiName、Stage

アラームの説明: REST API ステージの平均 4XX エラー率が 5% を超えた場合のアラーム。

目的: リクエスト問題を示す高いクライアントエラー率を検出します。

PromQL 基準: avg({__name__="4XXError", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiName="your-api-name",Stage="your-stage"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 5% を超えるクライアントエラー率を検出します。これはリクエストの重大な失敗を示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

5XXError

ラベル: ApiName、Stage

アラームの説明: REST API ステージの平均 5XX エラー率が 5% を超えた場合のアラーム。

目的: バックエンドの障害を示す高いサーバーエラー率を検出します。

PromQL 基準: avg({__name__="5XXError", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiName="your-api-name",Stage="your-stage"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 5% を超えるサーバーエラー率を検出します。これは至急調査する必要があります。

評価間隔: 60

保留期間: 180

リカバリ期間: 300

レイテンシー

ラベル: ApiName、Stage

アラームの説明: REST API ステージの p90 レイテンシーが 2500 ミリ秒を超えた場合のアラーム。

目的: ユーザーエクスペリエンスに影響する高い p90 レイテンシーを検出します。

PromQL 基準: histogram_quantile(0.9, {__name__="Latency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiName="your-api-name",Stage="your-stage"}) > 2500

推奨しきい値: 2500 (クエリに埋め込み)

しきい値の根拠: 2500 ミリ秒を超える p90 レイテンシーは、ほとんどのリクエストの応答時間が長くなっていることを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

カウント

ラベル: ApiName、Stage

アラームの説明: リクエストの合計数が REST API ステージの予想ベースラインを下回った場合のアラーム。

目的: ルーティングや可用性の問題を示す可能性のある低トラフィック量を検出します。

PromQL 基準: sum({__name__="Count", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiName="your-api-name",Stage="your-stage"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想されるトラフィックベースラインに基づいて設定し、予期しない低下を検出します。

評価間隔: 60

保留期間: 600

リカバリ期間: 300

HTTP API

4xx

ラベル: ApiId、Stage

アラームの説明: HTTP API ステージの平均 4XX エラー率が 5% を超えた場合のアラーム。

目的: HTTP API エンドポイントで高いクライアントエラー率を検出します。

PromQL 基準: avg({__name__="4xx", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 5% を超えるクライアントエラー率を検出します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

5xx

ラベル: ApiId、Stage

アラームの説明: HTTP API ステージの平均 5XX エラー率が 5% を超えた場合のアラーム。

目的: HTTP API エンドポイントで高いサーバーエラー率を検出します。

PromQL 基準: avg({__name__="5xx", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 調査を必要とする 5% を超えるサーバーエラー率を検出します。

評価間隔: 60

保留期間: 180

リカバリ期間: 300

レイテンシー

ラベル: ApiId、Stage

アラームの説明: HTTP API ステージの p90 レイテンシーが 2500 ミリ秒を超えた場合のアラーム。

目的: HTTP API エンドポイントで高い p90 レイテンシーを検出します。

PromQL 基準: histogram_quantile(0.9, {__name__="Latency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 2500

推奨しきい値: 2500 (クエリに埋め込み)

しきい値の根拠: 2500 ミリ秒を超える p90 レイテンシーは、応答時間が長くなっていることを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

IntegrationLatency

ラベル: ApiId、Stage

アラームの説明: HTTP API ステージの p90 統合レイテンシーが 2000 ミリ秒を超えた場合のアラーム。

目的: 応答時間に影響する高いバックエンド統合レイテンシーを検出します。

PromQL 基準: histogram_quantile(0.9, {__name__="IntegrationLatency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 2000

推奨しきい値: 2000 (クエリに埋め込み)

しきい値の根拠: 2000 ミリ秒を超える p90 統合レイテンシーは、バックエンドの速度低下を示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

カウント

ラベル: ApiId、Stage

アラームの説明: リクエストの合計数が HTTP API ステージの予想ベースラインを下回った場合のアラーム。

目的: ルーティングや可用性の問題を示す可能性のある低トラフィック量を検出します。

PromQL 基準: sum({__name__="Count", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想されるトラフィックベースラインに基づいて設定し、予期しない低下を検出します。

評価間隔: 60

保留期間: 600

リカバリ期間: 300

WebSocket API

ClientError

ラベル: ApiId、Stage

アラームの説明: WebSocket API ステージの平均クライアントエラー率が 5% を超えた場合のアラーム。

目的: WebSocket API 接続で高いクライアントエラー率を検出します。

PromQL 基準: avg({__name__="ClientError", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: WebSocket 接続で 5% を超えるクライアントエラー率を検出します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ExecutionError

ラベル: ApiId、Stage

アラームの説明: WebSocket API ステージの平均実行エラー率が 5% を超えた場合のアラーム。

目的: WebSocket API で高いサーバー側実行エラー率を検出します。

PromQL 基準: avg({__name__="ExecutionError", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 調査を必要とする 5% を超える実行エラー率を検出します。

評価間隔: 60

保留期間: 180

リカバリ期間: 300

IntegrationLatency

ラベル: ApiId、Stage

アラームの説明: WebSocket API ステージの p90 統合レイテンシーが 2000 ミリ秒を超えた場合のアラーム。

目的: WebSocket API ルートで高いバックエンド統合のイテンシーを検出します。

PromQL 基準: histogram_quantile(0.9, {__name__="IntegrationLatency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 2000

推奨しきい値: 2000 (クエリに埋め込み)

しきい値の根拠: 2000 ミリ秒を超える p90 統合レイテンシーは、バックエンドの速度低下を示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

MessageCount

ラベル: ApiId、Stage

アラームの説明: メッセージの合計数が WebSocket API ステージの予想ベースラインを下回った場合のアラーム。

目的: 接続やルーティングの問題を示す可能性のある低メッセージ量を検出します。

PromQL 基準: sum({__name__="MessageCount", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想されるメッセージ量に基づいて設定し、予期しない低下を検出します。

評価間隔: 60

保留期間: 600

リカバリ期間: 300

GroupInServiceCapacity

ラベル: AutoScalingGroupName

アラームの説明: 平均インサービス容量が Auto Scaling グループの予想最小値を下回った場合のアラーム。

目的: 起動の失敗またはインスタンスの終了による可用性の低下を検出します。

PromQL 基準: avg({__name__="GroupInServiceCapacity", "@instrumentation.@name"="cloudwatch.aws/autoscaling", AutoScalingGroupName="your-auto-scaling-group-name"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 起動の失敗やインスタンスの不足を検出するために必要な最小容量に基づいて設定します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

DaysToExpiry

ラベル: CertificateArn

アラームの説明: 証明書の有効期限までの最小日数が 44 日以下に低下した場合のアラーム。

目的: 更新の時間を確保するための先見的な証明書有効期限アラート。

PromQL 基準: min({__name__="DaysToExpiry", "@instrumentation.@name"="cloudwatch.aws/certificatemanager", CertificateArn="your-certificate-arn"}) <= 44

推奨しきい値: 44 (クエリに埋め込み)

しきい値の根拠: 更新プロセスを完了するために、証明書の有効期限が切れるまでのリードタイムを十分に確保します。

評価間隔: 86400

保留期間: 86400

リカバリ期間: 86400

5xxErrorRate

ラベル: DistributionId

アラームの説明: 平均 5xx エラー率が CloudFront 配信のしきい値を超えた場合のアラーム。

目的: コンテンツ配信に影響する高いオリジンまたは CloudFront エラー率を検出します。

PromQL 基準: avg({__name__="5xxErrorRate", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: コンテンツ配信の許容エラー率に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

OriginLatency

ラベル: DistributionId

アラームの説明: p90 オリジンレイテンシーが CloudFront 配信のしきい値を超えた場合のアラーム。

目的: コンテンツ配信パフォーマンスに影響する高いオリジンレスポンスレイテンシーを検出します。

PromQL 基準: histogram_quantile(0.9, {__name__="OriginLatency", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想されるオリジンレスポンス時間とキャッシュ戦略に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

FunctionValidationErrors

ラベル: DistributionId、FunctionName

アラームの説明: CloudFront 関数の検証エラーが発生した場合のアラーム。

目的: 関数の実行を妨げる CloudFront 関数の検証エラーを検出します。

PromQL 基準: sum({__name__="FunctionValidationErrors", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id",FunctionName="your-function-name"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: 検証エラーは、注意が必要な関数設定の問題を示します。

評価間隔: 60

保留期間: 120

リカバリ期間: 120

FunctionExecutionErrors

ラベル: DistributionId、FunctionName

アラームの説明: CloudFront 関数の実行エラーが発生した場合のアラーム。

目的: リクエスト処理に影響する CloudFront 関数のランタイム障害を検出します。

PromQL 基準: sum({__name__="FunctionExecutionErrors", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id",FunctionName="your-function-name"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: 実行エラーは、関数コードのランタイム問題を示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

FunctionThrottles

ラベル: DistributionId、FunctionName

アラームの説明: CloudFront 関数のスロットリングが発生した場合のアラーム。

目的: リクエスト処理を低下させる可能性のある CloudFront 関数スロットリングを検出します。

PromQL 基準: sum({__name__="FunctionThrottles", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id",FunctionName="your-function-name"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: スロットリングは、関数がコンピューティング制限に達していることを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

SignUpThrottles

ラベル: UserPool、UserPoolClient

アラームの説明: サインアップスロットルイベントがユーザープールのしきい値を超えた場合のアラーム。

目的: 新規ユーザー登録を妨げるサインアップスロットリングを検出します。

PromQL 基準: sum({__name__="SignUpThrottles", "@instrumentation.@name"="cloudwatch.aws/cognito", UserPool="your-user-pool",UserPoolClient="your-user-pool-client"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: サインアップオペレーションの許容可能なスロットルレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

SignInThrottles

ラベル: UserPool、UserPoolClient

アラームの説明: サインインスロットルイベントがユーザープールのしきい値を超えた場合のアラーム。

目的: ユーザー認証を妨げるサインインスロットリングを検出します。

PromQL 基準: sum({__name__="SignInThrottles", "@instrumentation.@name"="cloudwatch.aws/cognito", UserPool="your-user-pool",UserPoolClient="your-user-pool-client"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: サインインオペレーションの許容可能なスロットルレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

TokenRefreshThrottles

ラベル: UserPool、UserPoolClient

アラームの説明: トークン更新スロットルイベントがユーザープールのしきい値を超えた場合のアラーム。

目的: セッションの中断を引き起こす可能性のあるトークン更新スロットリングを検出します。

PromQL 基準: sum({__name__="TokenRefreshThrottles", "@instrumentation.@name"="cloudwatch.aws/cognito", UserPool="your-user-pool",UserPoolClient="your-user-pool-client"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: トークン更新オペレーションの許容可能なスロットルレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

FederationThrottles

ラベル: UserPool、UserPoolClient、IdentityProvider

アラームの説明: フェデレーションスロットルイベントがユーザープール ID プロバイダのしきい値を超えた場合のアラーム。

目的: フェデレーションサインインを妨げる可能性のあるフェデレーションスロットリングを検出します。

PromQL 基準: sum({__name__="FederationThrottles", "@instrumentation.@name"="cloudwatch.aws/cognito", UserPool="your-user-pool",UserPoolClient="your-user-pool-client",IdentityProvider="your-identity-provider"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: フェデレーションオペレーションの許容可能なスロットルレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

AccountProvisionedReadCapacityUtilization

ラベル: なし

アラームの説明: プロビジョニングされたアカウントレベルの読み込みキャパシティ使用率が 80% を超えた場合のアラーム。

目的: プロビジョニングされた読み込みキャパシティがアカウント制限に近づいた場合に検出します。

PromQL 基準: max({__name__="AccountProvisionedReadCapacityUtilization", "@instrumentation.@name"="cloudwatch.aws/dynamodb"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 使用率が 80% の場合、アカウント制限に達する前にヘッドルームが制限されます。

評価間隔: 300

保留期間: 600

リカバリ期間: 600

AccountProvisionedWriteCapacityUtilization

ラベル: なし

アラームの説明: プロビジョニングされたアカウントレベルの書き込みキャパシティ使用率が 80% を超えた場合のアラーム。

目的: プロビジョニングされた書き込みキャパシティがアカウント制限に近づいた場合に検出します。

PromQL 基準: max({__name__="AccountProvisionedWriteCapacityUtilization", "@instrumentation.@name"="cloudwatch.aws/dynamodb"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 使用率が 80% の場合、アカウント制限に達する前にヘッドルームが制限されます。

評価間隔: 300

保留期間: 600

リカバリ期間: 600

AgeOfOldestUnreplicatedRecord

ラベル: TableName、DelegatedOperation

アラームの説明: レプリケートされていない最古のレコードの経過時間がしきい値を超えた場合のアラーム。

目的: グローバルテーブル内のデータが古くなる原因となる可能性のあるレプリケーション遅延を検出します。

PromQL 基準: max({__name__="AgeOfOldestUnreplicatedRecord", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",DelegatedOperation="your-operation"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: レプリケーションの鮮度要件に基づいて設定します。

評価間隔: 300

保留期間: 900

リカバリ期間: 900

FailedToReplicateRecordCount

ラベル: TableName、DelegatedOperation

アラームの説明: グローバルテーブルでレコードのレプリケートに失敗した場合のアラーム。

目的: リージョン間でデータの不整合を引き起こすレプリケーションの失敗を検出します。

PromQL 基準: sum({__name__="FailedToReplicateRecordCount", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",DelegatedOperation="your-operation"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: レプリケーションの失敗は、即時対応を要するデータ整合性問題を示します。

評価間隔: 60

保留期間: 60

リカバリ期間: 60

ReadThrottleEvents

ラベル: TableName

アラームの説明: 読み込みスロットルイベントがユーザープールのしきい値を超えた場合のアラーム。

目的: プロビジョニングされた容量が不十分であることを示す読み取りスロットリングを検出します。

PromQL 基準: sum({__name__="ReadThrottleEvents", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 読み取りオペレーションの許容可能なスロットルレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ReadThrottleEvents (GSI)

ラベル: TableName、GlobalSecondaryIndexName

アラームの説明: 読み込みスロットルイベントがグローバルセカンダリインデックスのしきい値を超えた場合のアラーム。

目的: プロビジョニングされた容量が不十分であることを示す読み込みスロットリングを検出します。

PromQL 基準: sum({__name__="ReadThrottleEvents", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",GlobalSecondaryIndexName="your-index-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: GSI 読み込みオペレーションの許容可能なスロットルレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ReplicationLatency

ラベル: TableName、ReceivingRegion

アラームの説明: 平均レプリケーションレイテンシーがグローバルテーブルのしきい値を超えた場合のアラーム。

目的: レプリカリージョンで古い読み込みを引き起こす可能性のある高いレプリケーションレイテンシーを検出します。

PromQL 基準: avg({__name__="ReplicationLatency", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",ReceivingRegion="your-receiving-region"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: レプリカリージョンのデータ鮮度要件に基づいて設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

SuccessfulRequestLatency

ラベル: TableName、Operation

アラームの説明: 成功リクエストの平均レイテンシーがグローバルテーブルのしきい値を超えた場合のアラーム。

目的: アプリケーションのパフォーマンスに影響する DynamoDB オペレーションの高レイテンシーを検出します。

PromQL 基準: avg({__name__="SuccessfulRequestLatency", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",Operation="your-operation"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 特定の DynamoDB オペレーションのレイテンシー SLA に基づいて設定します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

SystemErrors

ラベル: TableName

アラームの説明: システムエラーがテーブルのしきい値を超えた場合のアラーム。

目的: テーブルの可用性に影響する DynamoDB サービス側エラーを検出します。

PromQL 基準: sum({__name__="SystemErrors", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: テーブルの許容システムエラー数に基づいて設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

ThrottledPutRecordCount

ラベル: TableName、DelegatedOperation

アラームの説明: スロットリングされた put レコード数がテーブルのしきい値を超えた場合のアラーム。

目的: ストリーミングオペレーションでデータ損失を引き起こす可能性のあるスロットリングされた put を検出します。

PromQL 基準: max({__name__="ThrottledPutRecordCount", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",DelegatedOperation="your-operation"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: ストリーミング put オペレーションの許容可能なスロットルレートに基づいて設定します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

UserErrors

ラベル: なし

アラームの説明: ユーザーエラーがアカウント全体のしきい値を超えた場合のアラーム。

目的: 検証の失敗や条件付きチェックの失敗などといったクライアントエラーの高い割合を検出します。

PromQL 基準: sum({__name__="UserErrors", "@instrumentation.@name"="cloudwatch.aws/dynamodb"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: クライアント側のリクエスト失敗の許容エラー率に基づいて設定します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

WriteThrottleEvents

ラベル: TableName

アラームの説明: 書き込みスロットルイベントがユーザープールのしきい値を超えた場合のアラーム。

目的: プロビジョニングされた容量が不十分であることを示す書き込みスロットリングを検出します。

PromQL 基準: sum({__name__="WriteThrottleEvents", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 書き込みオペレーションの許容可能なスロットルレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

WriteThrottleEvents (GSI)

ラベル: TableName、GlobalSecondaryIndexName

アラームの説明: 書き込みスロットルイベントがグローバルセカンダリインデックスのしきい値を超えた場合のアラーム。

目的: プロビジョニングされた容量が不十分であることを示す書き込みスロットリングを検出します。

PromQL 基準: sum({__name__="WriteThrottleEvents", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",GlobalSecondaryIndexName="your-index-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: GSI 書き込みオペレーションの許容可能なスロットルレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

VolumeStalledIOCheck

ラベル: VolumeId、InstanceId

アラームの説明: EBS ボリュームにより I/O チェックの停止エラーが報告された場合のアラーム。

目的: ボリューム障害を示す EBS ボリュームの I/O 停止を検出します。

PromQL 基準: max({__name__="VolumeStalledIOCheck", "@instrumentation.@name"="cloudwatch.aws/ebs", VolumeId="your-volume-id",InstanceId="your-instance-id"}) >= 1

推奨しきい値: 1 (クエリに埋め込み)

しきい値の根拠: 1 以上の値は、ボリュームの I/O が停止し、即時の調査が必要であることを示します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

CPUUtilization

ラベル: InstanceId

アラームの説明: EC2 インスタンスの平均 CPU 使用率が 80% を超えた場合のアラーム。

目的: 高い CPU 使用率を検出します。

PromQL 基準: avg({__name__="CPUUtilization", "@instrumentation.@name"="cloudwatch.aws/ec2", InstanceId="your-instance-id"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% のしきい値は飽和前にヘッドルームを提供します。

評価間隔: 300

保留期間: 900

リカバリ期間: 900

StatusCheckFailed

ラベル: InstanceId

アラームの説明: EC2 インスタンスのインスタンスまたはシステムヘルスチェックが失敗した場合のアラーム。

目的: インスタンスまたはシステムのヘルス問題を検出します。

PromQL 基準: max({__name__="StatusCheckFailed", "@instrumentation.@name"="cloudwatch.aws/ec2", InstanceId="your-instance-id"}) >= 1

推奨しきい値: 1 (クエリに埋め込み)

しきい値の根拠: ステータスチェックの失敗には調査が必要です。

評価間隔: 300

保留期間: 600

リカバリ期間: 600

StatusCheckFailed_AttachedEBS

ラベル: InstanceId

アラームの説明: アタッチされた EBS ボリュームが EC2 インスタンスに到達できなくなった場合のアラーム。

目的: 到達できない EBS ボリュームを検出します。

PromQL 基準: max({__name__="StatusCheckFailed_AttachedEBS", "@instrumentation.@name"="cloudwatch.aws/ec2", InstanceId="your-instance-id"}) >= 1

推奨しきい値: 1 (クエリに埋め込み)

しきい値の根拠: 到達できないボリュームは I/O 障害を引き起こします。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

CPUReservation

ラベル: ClusterName

アラームの説明: ECS クラスターの平均 CPU 予約が 80% を超えた場合のアラーム。

目的: CPU 容量に近づいているクラスターを検出します。

PromQL 基準: avg({__name__="CPUReservation", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 予約 80% は、新しいタスクのヘッドルームが限られていることを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

CPUUtilization

ラベル: ClusterName、ServiceName

アラームの説明: ECS サービスの平均 CPU 使用率が 80% を超えた場合のアラーム。

目的: ECS サービスの高い CPU 使用率を検出します。

PromQL 基準: avg({__name__="CPUUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

EBSFilesystemUtilization

ラベル: ClusterName、ServiceName

アラームの説明: ECS サービスの平均 EBS ファイルシステム使用率が 80% を超えた場合のアラーム。

目的: 高い EBS ストレージ使用率を検出します。

PromQL 基準: avg({__name__="EBSFilesystemUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

MemoryReservation

ラベル: ClusterName

アラームの説明: ECS クラスターの平均メモリ予約が 80% を超えた場合のアラーム。

目的: メモリ容量に近づいているクラスターを検出します。

PromQL 基準: avg({__name__="MemoryReservation", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 予約 80% は、新しいタスクのヘッドルームが限られていることを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

MemoryUtilization

ラベル: ClusterName、ServiceName

アラームの説明: ECS サービスの平均メモリ使用率が 80% を超えた場合のアラーム。

目的: 高いメモリ使用率を検出します。

PromQL 基準: avg({__name__="MemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

HTTPCode_Target_5XX_Count

ラベル: ClusterName、ServiceName

アラームの説明: HTTP 5XX エラー数が ECS サービスのしきい値を超えた場合のアラーム。

目的: 高いサーバー側エラー数を検出します。

PromQL 基準: sum({__name__="HTTPCode_Target_5XX_Count", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: アプリケーションの通常のエラー率ベースラインに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

TargetResponseTime

ラベル: ClusterName、ServiceName

アラームの説明: 平均ターゲット応答時間が ECS サービスのしきい値を超えた場合のアラーム。

目的: 高いターゲット応答時間を検出します。

PromQL 基準: avg({__name__="TargetResponseTime", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: アプリケーションの許容可能なレイテンシー要件に基づいて設定します。

Evaluation interval: 60

保留期間: 300

リカバリ期間: 300

EphemeralStorageUtilized

ラベル: ClusterName、ServiceName

アラームの説明: 平均エフェメラルストレージ使用量が Fargate タスクのしきい値を超えた場合のアラーム。

目的: Fargate タスクの高いエフェメラルストレージ使用率を検出します。

PromQL 基準: avg({__name__="EphemeralStorageUtilized", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: タスクのエフェメラルストレージの割り当てに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

RunningTaskCount

ラベル: ClusterName、ServiceName

アラームの説明: ECS サービスで実行中のタスク数がゼロまで低下した場合のアラーム。

目的: 実行されているタスクがない時点を検出します。

PromQL 基準: avg({__name__="RunningTaskCount", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) <= 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: 実行中のタスクがゼロの場合は、サービスが停止されます。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

instance_filesystem_utilization

ラベル: InstanceId、ContainerInstanceId、ClusterName

アラームの説明: コンテナインスタンスでファイルシステムの平均使用率が 90% を超えた場合のアラーム。

目的: 高いファイルシステム使用率を検出します。

PromQL 基準: avg({__name__="instance_filesystem_utilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", InstanceId="your-instance-id",ContainerInstanceId="your-container-instance-id",ClusterName="your-cluster-name"}) > 90

推奨しきい値: 90 (クエリに埋め込み)

しきい値の根拠: ファイルシステム使用率が 90% の場合、オペレーションのスペースは最小限に抑えられます。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

TaskCpuUtilization (クラスターレベル)

ラベル: ClusterName

アラームの説明: クラスターレベルでタスクの平均 CPU 使用率が 80% を超えた場合のアラーム。

目的: 高い CPU 使用率を検出します。

PromQL 基準: avg({__name__="TaskCpuUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

TaskCpuUtilization (サービスレベル)

ラベル: ClusterName、ServiceName

アラームの説明: サービスレベルでタスクの平均 CPU 使用率が 80% を超えた場合のアラーム。

目的: 高い CPU 使用率を検出します。

PromQL 基準: avg({__name__="TaskCpuUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

TaskMemoryUtilization (クラスターレベル)

ラベル: ClusterName

アラームの説明: クラスターレベルでタスクの平均メモリ使用率が 80% を超えた場合のアラーム。

目的: 高いメモリ使用率を検出します。

PromQL 基準: avg({__name__="TaskMemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

TaskMemoryUtilization (サービスレベル)

ラベル: ClusterName、ServiceName

アラームの説明: サービスレベルでタスクの平均メモリ使用率が 80% を超えた場合のアラーム。

目的: 高いメモリ使用率を検出します。

PromQL 基準: avg({__name__="TaskMemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ContainerCpuUtilization (クラスターレベル)

ラベル: ClusterName

アラームの説明: クラスターレベルでコンテナの平均 CPU 使用率が 80% を超えた場合のアラーム。

目的: 高い CPU 使用率を検出します。

PromQL 基準: avg({__name__="ContainerCpuUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ContainerCpuUtilization (コンテナレベル)

ラベル: ContainerName、ClusterName、ServiceName

アラームの説明: コンテナレベルでコンテナの平均 CPU 使用率が 80% を超えた場合のアラーム。

目的: 高い CPU 使用率を検出します。

PromQL 基準: avg({__name__="ContainerCpuUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ContainerName="your-container-name",ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ContainerMemoryUtilization (クラスターレベル)

ラベル: ClusterName

アラームの説明: クラスターレベルでコンテナの平均メモリ使用率が 80% を超えた場合のアラーム。

目的: 高いメモリ使用率を検出します。

PromQL 基準: avg({__name__="ContainerMemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ContainerMemoryUtilization (コンテナレベル)

ラベル: ContainerName、ClusterName、ServiceName

アラームの説明: コンテナレベルでコンテナの平均メモリ使用率が 80% を超えた場合のアラーム。

目的: 高いメモリ使用率を検出します。

PromQL 基準: avg({__name__="ContainerMemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ContainerName="your-container-name",ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

TaskEBSfilesystemUtilization

ラベル: ClusterName、ServiceName

アラームの説明: タスクの平均 EBS ファイルシステム使用率が 80% を超えた場合のアラーム。

目的: 高い EBS ファイルシステム使用率を検出します。

PromQL 基準: avg({__name__="TaskEBSfilesystemUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

TaskEphemeralStorageUtilization (クラスターレベル)

ラベル: ClusterName

アラームの説明: クラスターレベルでエフェメラルストレージの平均使用率が 80% を超えた場合のアラーム。

目的: 高いエフェメラルストレージ使用率を検出します。

PromQL 基準: avg({__name__="TaskEphemeralStorageUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

TaskEphemeralStorageUtilization (サービスレベル)

ラベル: ClusterName、ServiceName

アラームの説明: サービスレベルでエフェメラルストレージの平均使用率が 80% を超えた場合のアラーム。

目的: 高いエフェメラルストレージ使用率を検出します。

PromQL 基準: avg({__name__="TaskEphemeralStorageUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

PercentIOLimit

ラベル: FileSystemId

アラームの説明: EFS ファイルシステムが I/O 制限の 100% に達した場合のアラーム。

目的: ファイルシステムが I/O 制限に達した時点を検出します。

PromQL 基準: avg({__name__="PercentIOLimit", "@instrumentation.@name"="cloudwatch.aws/efs", FileSystemId="your-filesystem-id"}) >= 100

推奨しきい値: 100 (クエリに埋め込み)

しきい値の根拠: 100% になると、ファイルシステムはボトルネックになります。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

BurstCreditBalance

ラベル: FileSystemId

アラームの説明: EFS ファイルシステムのバーストクレジットバランスがゼロまで低下した場合のアラーム。

目的: スループットが遅くなる原因となる、枯渇したバーストクレジットを検出します。

PromQL 基準: avg({__name__="BurstCreditBalance", "@instrumentation.@name"="cloudwatch.aws/efs", FileSystemId="your-filesystem-id"}) <= 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: クレジットがゼロになると、スループットが低下します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

node_cpu_utilization

ラベル: ClusterName

アラームの説明: EKS ワーカーノードの最大 CPU 使用率が 80% を超えた場合のアラーム。

目的: ワーカーノードで高い CPU を検出します。

PromQL 基準: max({__name__="node_cpu_utilization", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

node_filesystem_utilization

ラベル: ClusterName

アラームの説明: EKS ワーカーノードの最大ファイルシステム使用率がしきい値を超えた場合のアラーム。

目的: ワーカーノードでの高いファイルシステム使用率を検出します。

PromQL 基準: max({__name__="node_filesystem_utilization", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: ノードのストレージ容量と使用パターンに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

node_memory_utilization

ラベル: ClusterName

アラームの説明: EKS ワーカーノードの最大メモリ使用率が 80% を超えた場合のアラーム。

目的: ワーカーノードで高いメモリを検出します。

PromQL 基準: max({__name__="node_memory_utilization", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は飽和前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

pod_cpu_utilization_over_pod_limit

ラベル: ClusterName、Namespace、Service

アラームの説明: ポッド CPU 使用率が制限の 80% を超えた場合のアラーム。

目的: CPU 制限に近づいているポッドを検出します。

PromQL 基準: max({__name__="pod_cpu_utilization_over_pod_limit", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name",Namespace="your-namespace",Service="your-service"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% はスロットリング発生前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

pod_memory_utilization_over_pod_limit

ラベル: ClusterName、Namespace、Service

アラームの説明: ポッドメモリ使用率が制限の 80% を超えた場合のアラーム。

目的: メモリ制限に近づいているポッドを検出します。

PromQL 基準: max({__name__="pod_memory_utilization_over_pod_limit", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name",Namespace="your-namespace",Service="your-service"}) > 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% は OOMKill 発生前にヘッドルームを提供します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

CPUUtilization

ラベル: CacheClusterId、CacheNodeId

アラームの説明: 平均 CPU 使用率が ElastiCache ノードのしきい値を超えた場合のアラーム。

目的: インスタンス全体で高い CPU 使用率を検出します。

PromQL 基準: avg({__name__="CPUUtilization", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id",CacheNodeId="your-cache-node-id"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: ノードタイプとワークロードの特性に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

CurrConnections

ラベル: CacheClusterId、CacheNodeId

アラームの説明: 接続数が ElastiCache ノードのしきい値を超えた場合のアラーム。

目的: 高い接続数を検出します。

PromQL 基準: avg({__name__="CurrConnections", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id",CacheNodeId="your-cache-node-id"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想される接続プールのサイズとアプリケーションのニーズに基づいて設定します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

DatabaseMemoryUsagePercentage

ラベル: CacheClusterId

アラームの説明: データベースのメモリ使用量が ElastiCache クラスターのしきい値を超えた場合のアラーム。

目的: 書き込みの失敗を防ぐため、高いメモリ使用率を検出します。

PromQL 基準: avg({__name__="DatabaseMemoryUsagePercentage", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: エビクションポリシーとデータ重要度に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

EngineCPUUtilization

ラベル: CacheClusterId

アラームの説明: ElastiCache クラスターの Redis エンジン CPU 使用率が 90% を超えた場合のアラーム。

目的: Redis エンジンの高い CPU 使用率を検出します。

PromQL 基準: avg({__name__="EngineCPUUtilization", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id"}) > 90

推奨しきい値: 90 (クエリに埋め込み)

しきい値の根拠: Redis はシングルスレッドで、90% を超えると飽和を示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ReplicationLag

ラベル: CacheClusterId

アラームの説明: レプリケーション遅延が ElastiCache クラスターのしきい値を超えた場合のアラーム。

目的: データ整合性に影響するレプリケーション遅延を検出します。

PromQL 基準: avg({__name__="ReplicationLag", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 古い読み込みに対するアプリケーションの許容値に基づいて設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

GPUConnectivityCheckFailed

ラベル: InstanceId、EGPUId

アラームの説明: Elastic Graphics アクセラレーターがインスタンスへの接続を失った場合のアラーム。

目的: Elastic Graphics アクセラレーターに対する接続問題を検出します。

PromQL 基準: max({__name__="GPUConnectivityCheckFailed", "@instrumentation.@name"="cloudwatch.aws/elasticgpus", InstanceId="your-instance-id",EGPUId="your-egpu-id"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: 接続の失敗には調査が必要です。

評価間隔: 300

保留期間: 900

リカバリ期間: 900

GPUHealthCheckFailed

ラベル: InstanceId、EGPUId

アラームの説明: Elastic Graphics アクセラレーターのヘルスチェックが失敗した場合のアラーム。

目的: 異常な Elastic Graphics アクセラレーターを検出します。

PromQL 基準: max({__name__="GPUHealthCheckFailed", "@instrumentation.@name"="cloudwatch.aws/elasticgpus", InstanceId="your-instance-id",EGPUId="your-egpu-id"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: ヘルスチェックの失敗はアクセラレーターの問題を示します。

評価間隔: 300

保留期間: 900

リカバリ期間: 900

TargetErrorThrottledCount

アラームの説明: スケジュールターゲット呼び出しがスロットルされた場合のアラーム。

目的: スケジュールの遅延の原因となるターゲットスロットリングを検出します。

PromQL 基準: sum({__name__="TargetErrorThrottledCount", "@instrumentation.@name"="cloudwatch.aws/scheduler"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: スロットリングは、ターゲット容量の問題を示します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

InvocationThrottleCount

アラームの説明: スケジューラの呼び出しがスロットルされた場合のアラーム。

目的: スケジューラの呼び出しのスロットリングを検出します。

PromQL 基準: sum({__name__="InvocationThrottleCount", "@instrumentation.@name"="cloudwatch.aws/scheduler"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: スロットリングはスケジュールされた実行を遅延させます。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

InvocationDroppedCount

アラームの説明: スケジュールされた呼び出しがドロップされた場合のアラーム。

目的: ドロップされた呼び出しを検出します。

PromQL 基準: sum({__name__="InvocationDroppedCount", "@instrumentation.@name"="cloudwatch.aws/scheduler"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: ドロップされた呼び出しは、スケジュールされたイベントの喪失を表します。

評価間隔: 60

保留期間: 60

リカバリ期間: 60

InvocationsFailedToBeSentToDeadLetterCount

アラームの説明: 失敗した呼び出しをデッドレターキューに送信できない場合のアラーム。

目的: DLQ 配信の失敗を検出します。

PromQL 基準: sum({__name__="InvocationsFailedToBeSentToDeadLetterCount", "@instrumentation.@name"="cloudwatch.aws/scheduler"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: DLQ 配信に失敗すると、エラー情報が失われます。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

GetRecords.IteratorAgeMilliseconds

ラベル: StreamName

アラームの説明: コンシューマーイテレーターの経過時間が Kinesis ストリームのしきい値を超えた場合のアラーム。

目的: 保存期間を過ぎ、データ損失のリスクがあるデータを検出します。

PromQL 基準: max({__name__="GetRecords.IteratorAgeMilliseconds", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: ストリーム保持期間の割合に基づいて設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

GetRecords.Success

ラベル: StreamName

アラームの説明: GetRecords の成功率が Kinesis ストリームのしきい値を下回った場合のアラーム。

目的: コンシューマー取得の失敗を検出します。

PromQL 基準: avg({__name__="GetRecords.Success", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想される成功率に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

PutRecord.Success

ラベル: StreamName

アラームの説明: PutRecord の成功率が Kinesis ストリームのしきい値を下回った場合のアラーム。

目的: プロデューサーの取り込みエラーを検出します。

PromQL 基準: avg({__name__="PutRecord.Success", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想される成功率に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

PutRecords.FailedRecords

ラベル: StreamName

アラームの説明: バッチ配置オペレーションにより Kinesis ストリームのレコード失敗が発生した場合のアラーム。

目的: バッチ配置の失敗を検出します。

PromQL 基準: sum({__name__="PutRecords.FailedRecords", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能な失敗回数に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ReadProvisionedThroughputExceeded

ラベル: StreamName

アラームの説明: コンシューマーの読み込みが Kinesis ストリームのプロビジョニングされたスループットを超えた場合のアラーム。

目的: コンシューマーの読み込みのスロットリングを検出します。

PromQL 基準: avg({__name__="ReadProvisionedThroughputExceeded", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 継続的なスロットリングは容量のニーズを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

SubscribeToShardEvent.MillisBehindLatest

ラベル: StreamName、ConsumerName

アラームの説明: 拡張ファンアウトコンシューマーが最新のレコードを下回った場合のアラーム。

目的: 拡張ファンアウトコンシューマー処理の遅延を検出します。

PromQL 基準: avg({__name__="SubscribeToShardEvent.MillisBehindLatest", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name",ConsumerName="your-consumer-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能な処理遅延に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

WriteProvisionedThroughputExceeded

ラベル: StreamName

アラームの説明: プロデューサーの書き込みが Kinesis ストリームのプロビジョニングされたスループットを超えた場合のアラーム。

目的: プロデューサーの書き込みのスロットリングを検出します。

PromQL 基準: avg({__name__="WriteProvisionedThroughputExceeded", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 継続的なスロットリングは容量のニーズを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ClaimedAccountConcurrency

アラームの説明: 登録済みアカウントの同時実行数がしきい値を超えた場合のアラーム。

目的: 同時実行クォータに近づいているアカウントを検出します。

PromQL 基準: max({__name__="ClaimedAccountConcurrency", "@instrumentation.@name"="cloudwatch.aws/lambda"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: リージョンの同時実行制限の割合に設定します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

エラー

ラベル: FunctionName

アラームの説明: 関数のエラー数が Lambda 関数のしきい値を超えた場合のアラーム。

目的: 高い関数エラー数を検出します。

PromQL 基準: sum({__name__="Errors", "@instrumentation.@name"="cloudwatch.aws/lambda", FunctionName="your-function-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能なエラー数に基づいて設定します。

評価間隔: 60

保留期間: 180

リカバリ期間: 300

Throttles

ラベル: FunctionName

アラームの説明: Lambda 関数の関数呼び出しがスロットリングされた場合のアラーム。

目的: 関数呼び出しスロットリングを検出します。

PromQL 基準: sum({__name__="Throttles", "@instrumentation.@name"="cloudwatch.aws/lambda", FunctionName="your-function-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: スロットリングは、同時実行数の制限に達したことを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

時間

ラベル: FunctionName

アラームの説明: p90 関数の持続期間が Lambda 関数のしきい値を超えた場合のアラーム。

目的: 長時間実行されている関数呼び出しを検出します。

PromQL 基準: histogram_quantile(0.9, {__name__="Duration", "@instrumentation.@name"="cloudwatch.aws/lambda", FunctionName="your-function-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 関数のタイムアウトに対する相対値を設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

ConcurrentExecutions

ラベル: FunctionName

アラームの説明: 同時実行が Lambda 関数のしきい値を超えた場合のアラーム。

目的: 同時実行数の制限に近づいている関数を検出します。

PromQL 基準: max({__name__="ConcurrentExecutions", "@instrumentation.@name"="cloudwatch.aws/lambda", FunctionName="your-function-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予約済み同時実行の割合に設定します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

memory_utilization

ラベル: function_name

アラームの説明: Lambda 関数の平均メモリ使用率が 90% を超えた場合のアラーム。

目的: 設定されたメモリ制限に近づいている関数を検出します。

PromQL 基準: avg({__name__="memory_utilization", "@instrumentation.@name"="cloudwatch.aws/lambda-insights", function_name="your-function-name"}) > 90

推奨しきい値: 90 (クエリに埋め込み)

しきい値の根拠: 90% を超えるとメモリ不足障害のリスクがあります。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

ErrorPortAllocation

ラベル: NatGatewayId

アラームの説明: NAT ゲートウェイが新しい接続へのポートの割り当てに失敗した場合のアラーム。

目的: 新しい接続を妨げるポート割り当ての失敗を検出します。

PromQL 基準: sum({__name__="ErrorPortAllocation", "@instrumentation.@name"="cloudwatch.aws/natgateway", NatGatewayId="your-nat-gateway-id"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: 割り当ての失敗は接続に影響します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

PacketsDropCount

ラベル: NatGatewayId

アラームの説明: NAT ゲートウェイがしきい値を超えるパケットをドロップした場合のアラーム。

目的: 容量または接続の問題を示すパケットドロップを検出します。

PromQL 基準: sum({__name__="PacketsDropCount", "@instrumentation.@name"="cloudwatch.aws/natgateway", NatGatewayId="your-nat-gateway-id"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能なドロップレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

PacketsDropped

ラベル: VpcId、VpcEndpointId、EndpointType、SubnetId、ServiceName

アラームの説明: VPC エンドポイントがしきい値を超えるパケットをドロップした場合のアラーム。

目的: エンドポイントやエンドポイントサービスの異常を検出します。

PromQL 基準: sum({__name__="PacketsDropped", "@instrumentation.@name"="cloudwatch.aws/privatelinkendpoints", VpcId="your-vpc-id",VpcEndpointId="your-vpc-endpoint-id",EndpointType="your-endpoint-type",SubnetId="your-subnet-id",ServiceName="your-service-name"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能なドロップレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

RstPacketsSent

ラベル: ServiceId、LoadBalancerArn、Az

アラームの説明: RST パケットレートがエンドポイントサービスのしきい値を超えた場合のアラーム。

目的: エンドポイントサービスの異常なターゲットを検出します。

PromQL 基準: sum({__name__="RstPacketsSent", "@instrumentation.@name"="cloudwatch.aws/privatelinkservices", ServiceId="SVC",LoadBalancerArn="LB",Az="AZ"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能な RST パケットレートに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

CPUUtilization

ラベル: DBInstanceIdentifier

アラームの説明: RDS インスタンスの平均 CPU 使用率が 90% を超えた場合のアラーム。

目的: パフォーマンスの低下を防ぐために高 CPU を検出します。

PromQL 基準: avg({__name__="CPUUtilization", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 90

推奨しきい値: 90 (クエリに埋め込み)

しきい値の根拠: 90% は飽和に近いことを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

DatabaseConnections

ラベル: DBInstanceIdentifier

アラームの説明: データベース接続が RDS インスタンスのしきい値を超えた場合のアラーム。

目的: 最大制限での接続拒否を防止します。

PromQL 基準: avg({__name__="DatabaseConnections", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: max_connections パラメータの割合に設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

EBSByteBalance%

ラベル: DBInstanceIdentifier

アラームの説明: RDS インスタンスの EBS バイトバランスが 10% を下回った場合のアラーム。

目的: ボトルネックの原因となる低スループットクレジットを検出します。

PromQL 基準: avg({__name__="EBSByteBalance%", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) < 10

推奨しきい値: 10 (クエリに埋め込み)

しきい値の根拠: 10% を下回ると、スループットが低下するリスクがあります。

評価間隔: 60

保留期間: 180

リカバリ期間: 180

EBSIOBalance%

ラベル: DBInstanceIdentifier

アラームの説明: RDS インスタンスの EBS IO バランスが 10% を下回った場合のアラーム。

目的: ボトルネックの原因となる低 IOPS クレジットを検出します。

PromQL 基準: avg({__name__="EBSIOBalance%", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) < 10

推奨しきい値: 10 (クエリに埋め込み)

しきい値の根拠: 10% を下回ると、IOPS が低下するリスクがあります。

評価間隔: 60

保留期間: 180

リカバリ期間: 180

FreeableMemory

ラベル: DBInstanceIdentifier

アラームの説明: 解放可能なメモリが RDS インスタンスのしきい値を下回った場合のアラーム。

目的: メモリ不足による接続拒否を防止します。

PromQL 基準: avg({__name__="FreeableMemory", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: インスタンスクラスのメモリに基づいて設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

FreeLocalStorage

ラベル: DBInstanceIdentifier

アラームの説明: 空きローカルストレージが Aurora インスタンスのしきい値を下回った場合のアラーム。

目的: Aurora ローカルストレージの枯渇を防ぎます。

PromQL 基準: avg({__name__="FreeLocalStorage", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: オペレーションに必要な最小値に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

FreeStorageSpace

ラベル: DBInstanceIdentifier

アラームの説明: ストレージの空きスペースが RDS インスタンスのしきい値を下回った場合のアラーム。

目的: ストレージフルによるダウンタイムを防止します。

PromQL 基準: min({__name__="FreeStorageSpace", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: ストレージの増加率とプロビジョニングされたサイズに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

MaximumUsedTransactionIDs

ラベル: DBInstanceIdentifier

アラームの説明: RDS インスタンスの使用済みトランザクション ID の最大数が 10 億を超えた場合のアラーム。

目的: PostgreSQL のトランザクション ID のラップアラウンドを防ぎます。

PromQL 基準: avg({__name__="MaximumUsedTransactionIDs", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 1000000000

推奨しきい値: 1000000000 (クエリに埋め込み)

しきい値の根拠: 10 億はラップアラウンドの危険に近づいていることを示します。

評価間隔: 60

保留期間: 60

リカバリ期間: 60

ReadLatency

ラベル: DBInstanceIdentifier

アラームの説明: p90 読み込みレイテンシーが RDS インスタンスのしきい値を超えた場合のアラーム。

目的: ディスク問題を示す高い読み込みレイテンシーを検出します。

PromQL 基準: histogram_quantile(0.9, {__name__="ReadLatency", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能なアプリケーションレイテンシーに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ReplicaLag

ラベル: DBInstanceIdentifier

アラームの説明: RDS リードレプリカのレプリケーション遅延が 60 秒を超えた場合のアラーム。

目的: データ損失のリスクがあるレプリケーション遅延を検出します。

PromQL 基準: max({__name__="ReplicaLag", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 60

推奨しきい値: 60 (クエリに埋め込み)

しきい値の根拠: 60 秒は、ほとんどのワークロードにとって大幅な遅延を表します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

WriteLatency

ラベル: DBInstanceIdentifier

アラームの説明: p90 書き込みレイテンシーが RDS インスタンスのしきい値を超えた場合のアラーム。

目的: ディスク問題を示す高い書き込みレイテンシーを検出します。

PromQL 基準: histogram_quantile(0.9, {__name__="WriteLatency", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能なアプリケーションレイテンシーに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

DBLoad

ラベル: DBInstanceIdentifier

アラームの説明: 平均データベース負荷が RDS インスタンスのしきい値を超えた場合のアラーム。

目的: パフォーマンスを低下させている高いデータベース負荷を検出します。

PromQL 基準: avg({__name__="DBLoad", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: vCPU 数の倍数に設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

AuroraVolumeBytesLeftTotal

ラベル: DBClusterIdentifier

アラームの説明: Aurora クラスターストレージの残りのバイト数がしきい値を下回った場合のアラーム。

目的: Aurora クラスターストレージの枯渇を防ぎます。

PromQL 基準: avg({__name__="AuroraVolumeBytesLeftTotal", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 増加率に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

AuroraBinlogReplicaLag

ラベル: DBClusterIdentifier

アラームの説明: Aurora バイナリログレプリカの遅延がエラー状態を示す場合のアラーム。

目的: ライターインスタンスのレプリケーションエラーを検出します。

PromQL 基準: avg({__name__="AuroraBinlogReplicaLag", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) <= -1

推奨しきい値: -1 (クエリに埋め込み)

しきい値の根拠: -1 はエラー状態を示します。

評価間隔: 60

保留期間: 120

リカバリ期間: 120

BlockedTransactions

ラベル: DBInstanceIdentifier

アラームの説明: ブロックされたトランザクション数が RDS インスタンスのしきい値を超えた場合のアラーム。

目的: パフォーマンスの低下を引き起こすトランザクションブロッキングを検出します。

PromQL 基準: avg({__name__="BlockedTransactions", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能なブロックされたトランザクション数に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

BufferCacheHitRatio

ラベル: DBInstanceIdentifier

アラームの説明: RDS インスタンスのバッファキャッシュヒット率が 80% を下回った場合のアラーム。

目的: パフォーマンスの低下を招く低いキャッシュ効率を検知します。

PromQL 基準: avg({__name__="BufferCacheHitRatio", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) < 80

推奨しきい値: 80 (クエリに埋め込み)

しきい値の根拠: 80% 未満はディスク I/O が過剰であることを示します。

評価間隔: 60

保留期間: 600

リカバリ期間: 600

EngineUptime

ラベル: DBClusterIdentifier

アラームの説明: エンジンアップタイムがゼロまで低下し、Aurora ライターが再起動した場合のアラーム。

目的: Aurora ライターインスタンスのダウンタイムまたはクラッシュを検出します。

PromQL 基準: avg({__name__="EngineUptime", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) <= 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: ゼロのアップタイムはインスタンスの再起動を示します。

評価間隔: 60

保留期間: 120

リカバリ期間: 120

RollbackSegmentHistoryListLength

ラベル: DBInstanceIdentifier

アラームの説明: Aurora インスタンスのロールバックセグメント履歴リストの長さが 100 万を超えた場合のアラーム。

目的: CPU の低下を引き起こす高いロールバック履歴を検出します。

PromQL 基準: avg({__name__="RollbackSegmentHistoryListLength", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 1000000

推奨しきい値: 1000000 (クエリに埋め込み)

しきい値の根拠: 100 万を超えるとパフォーマンス問題が発生します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

StorageNetworkThroughput

ラベル: DBClusterIdentifier

アラームの説明: ストレージネットワークのスループットが Aurora クラスターのしきい値を超えた場合のアラーム。

目的: ネットワークパケットドロップのリスクをもたらす高スループットを検出します。

PromQL 基準: avg({__name__="StorageNetworkThroughput", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: インスタンスのネットワーク容量に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

HealthCheckStatus

ラベル: HealthCheckId

アラームの説明: Route 53 ヘルスチェックで異常なエンドポイントが報告された場合のアラーム。

目的: Route 53 ヘルスチェッカーを使用して、異常なエンドポイントを検出します。

PromQL 基準: avg({__name__="HealthCheckStatus", "@instrumentation.@name"="cloudwatch.aws/route53", HealthCheckId="HC"}) < 1

推奨しきい値: 1 (クエリに埋め込み)

しきい値の根拠: 1 未満は、エンドポイントがヘルスチェックに失敗したことを示します。

評価間隔: 60

保留期間: 180

リカバリ期間: 180

4xxErrors

ラベル: BucketName、FilterId

アラームの説明: S3 バケットの 4XX エラー率が 5% を超えた場合のアラーム。

目的: 異常なクライアントエラー率を検出します。

PromQL 基準: avg({__name__="4xxErrors", "@instrumentation.@name"="cloudwatch.aws/s3", BucketName="BUCKET",FilterId="FILTER"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 5% を超えると、セットアップまたはアクセスの問題を示します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

5xxErrors

ラベル: BucketName、FilterId

アラームの説明: S3 バケットの 5XX エラー率が 5% を超えた場合のアラーム。

目的: アプリケーションに影響するサーバー側エラーを検出します。

PromQL 基準: avg({__name__="5xxErrors", "@instrumentation.@name"="cloudwatch.aws/s3", BucketName="BUCKET",FilterId="FILTER"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 5% を超えると、S3 サービス問題を示します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

OperationsFailedReplication

ラベル: SourceBucket、DestinationBucket、RuleId

アラームの説明: バケットの S3 レプリケーションオペレーションが失敗した場合のアラーム。

目的: データ不整合のリスクがあるレプリケーション失敗を検出します。

PromQL 基準: max({__name__="OperationsFailedReplication", "@instrumentation.@name"="cloudwatch.aws/s3", SourceBucket="SRC",DestinationBucket="DST",RuleId="RULE"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: レプリケーションの失敗には調査が必要です。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

4xxErrors

ラベル: AccessPointName、DataSourceARN

アラームの説明: S3 Object Lambda アクセスポイントの 4xx エラー率が 5% を超えた場合のアラーム。

目的: Object Lambda の異常なクライアントエラー率を検出します。

PromQL 基準: avg({__name__="4xxErrors", "@instrumentation.@name"="cloudwatch.aws/s3objectlambda", AccessPointName="AP",DataSourceARN="ARN"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 5% を超えると、セットアップの問題を示します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

5xxErrors

ラベル: AccessPointName、DataSourceARN

アラームの説明: S3 Object Lambda アクセスポイントの 5xx エラー率が 5% を超えた場合のアラーム。

目的: Object Lambda におけるサーバー側エラーを検出します。

PromQL 基準: avg({__name__="5xxErrors", "@instrumentation.@name"="cloudwatch.aws/s3objectlambda", AccessPointName="AP",DataSourceARN="ARN"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 5% を超えると、Lambda または S3 の問題を示します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

LambdaResponse4xx

ラベル: AccessPointName、DataSourceARN

アラームの説明: S3 Object Lambda アクセスポイントの Lambda 関数 4xx 応答率が 5% を超えた場合のアラーム。

目的: Lambda 関数のクライアントエラーを検出します。

PromQL 基準: avg({__name__="LambdaResponse4xx", "@instrumentation.@name"="cloudwatch.aws/s3objectlambda", AccessPointName="AP",DataSourceARN="ARN"}) > 0.05

推奨しきい値: 0.05 (クエリに埋め込み)

しきい値の根拠: 5% を超えると、Lambda 関数の問題を示します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

NumberOfMessagesPublished

ラベル: TopicName

アラームの説明: 発行されたメッセージ数が SNS トピックのしきい値を下回った場合のアラーム。

目的: 発行ボリュームの大幅な減少を検出します。

PromQL 基準: sum({__name__="NumberOfMessagesPublished", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想される最小トラフィックに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

NumberOfNotificationsDelivered

ラベル: TopicName

アラームの説明: 配信された通知の数が SNS トピックのしきい値を下回った場合のアラーム。

目的: 通知配信ボリュームの減少を検出します。

PromQL 基準: sum({__name__="NumberOfNotificationsDelivered", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想される最小配信数に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

NumberOfNotificationsFailed

ラベル: TopicName

アラームの説明: 失敗した通知配信の数が SNS トピックのしきい値を超えた場合のアラーム。

目的: 配信の失敗を検出します。

PromQL 基準: sum({__name__="NumberOfNotificationsFailed", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能な失敗率に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

NumberOfNotificationsFilteredOut-InvalidAttributes

ラベル: TopicName

アラームの説明: 無効なメッセージ属性が原因で通知が除外された場合のアラーム。

目的: 無効なメッセージ属性を検出します。

PromQL 基準: sum({__name__="NumberOfNotificationsFilteredOut-InvalidAttributes", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: 無効なフィルターは設定ミスを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

NumberOfNotificationsFilteredOut-InvalidMessageBody

ラベル: TopicName

アラームの説明: 無効なメッセージ本文が原因で通知が除外された場合のアラーム。

目的: 無効なメッセージ本文を検出します。

PromQL 基準: sum({__name__="NumberOfNotificationsFilteredOut-InvalidMessageBody", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: 無効なフィルターは設定ミスを示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

NumberOfNotificationsRedrivenToDlq

ラベル: TopicName

アラームの説明: SNS トピックのデッドレターキューに通知が送信された場合のアラーム。

目的: デッドレターキューに送信されたメッセージを検出します。

PromQL 基準: sum({__name__="NumberOfNotificationsRedrivenToDlq", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: DLQ メッセージは配信の問題を示します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

NumberOfNotificationsFailedToRedriveToDlq

ラベル: TopicName

アラームの説明: SNS トピックのデッドレターキューに通知が送信されなかった場合のアラーム。

目的: DLQ 配信の失敗を検出します。

PromQL 基準: sum({__name__="NumberOfNotificationsFailedToRedriveToDlq", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: DLQ が失敗すると、エラー追跡が失われます。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

SMSMonthToDateSpentUSD

ラベル: TopicName

アラームの説明: SMS 支出が SNS トピックのアカウントクォータに近づいた場合のアラーム。

目的: クォータに近づいている SMS 支出を検出します。

PromQL 基準: max({__name__="SMSMonthToDateSpentUSD", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: アカウント SMS クォータに基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

SMSSuccessRate

ラベル: TopicName

アラームの説明: SMS 配信の成功率が SNS トピックのしきい値を下回った場合のアラーム。

目的: 失敗した SMS 配信を検出します。

PromQL 基準: avg({__name__="SMSSuccessRate", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) < THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能な配信率に基づいて設定します。

評価間隔: 60

保留期間: 300

リカバリ期間: 300

ApproximateAgeOfOldestMessage

ラベル: QueueName

アラームの説明: 最も古いメッセージ経過時間が SQS キューのしきい値を超えた場合のアラーム。

目的: 処理が迅速でなかったメッセージを検出します。

PromQL 基準: max({__name__="ApproximateAgeOfOldestMessage", "@instrumentation.@name"="cloudwatch.aws/sqs", QueueName="QUEUE"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 許容可能なメッセージ処理時間に基づいて設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

ApproximateNumberOfMessagesNotVisible

ラベル: QueueName

アラームの説明: 処理中メッセージ数が SQS キューのしきい値を超えた場合のアラーム。

目的: コンシューマーの問題を示す処理中メッセージ数の増加を検出します。

PromQL 基準: avg({__name__="ApproximateNumberOfMessagesNotVisible", "@instrumentation.@name"="cloudwatch.aws/sqs", QueueName="QUEUE"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想される処理量に基づいて設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

ApproximateNumberOfMessagesVisible

ラベル: QueueName

アラームの説明: 可視メッセージ数が SQS キューのしきい値を超えた場合のアラーム。

目的: 遅いコンシューマーを示すメッセージバックログを検出します。

PromQL 基準: avg({__name__="ApproximateNumberOfMessagesVisible", "@instrumentation.@name"="cloudwatch.aws/sqs", QueueName="QUEUE"}) > THRESHOLD

推奨しきい値: THRESHOLD (クエリに埋め込み)

しきい値の根拠: 予想されるキュー深度に基づいて設定します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

NumberOfMessagesSent

ラベル: QueueName

アラームの説明: SQS キューにメッセージが一切送信されない場合のアラーム。

目的: プロデューサーによるメッセージ送信停止を検出します。

PromQL 基準: sum({__name__="NumberOfMessagesSent", "@instrumentation.@name"="cloudwatch.aws/sqs", QueueName="QUEUE"}) <= 0

推奨しきい値: 0 (クエリに埋め込み)

しきい値の根拠: メッセージがゼロの場合は、プロデューサーの障害を示します。

評価間隔: 60

保留期間: 900

リカバリ期間: 900

TunnelState (VPN レベル)

ラベル: VpnId

アラームの説明: 少なくとも 1 つの VPN トンネルが DOWN 状態になっている場合のアラーム。

目的: DOWN 状態のトンネルが 1 つでもあれば検出します。

PromQL 基準: min({__name__="TunnelState", "@instrumentation.@name"="cloudwatch.aws/vpn", VpnId="VPN"}) < 1

推奨しきい値: 1 (クエリに埋め込み)

しきい値の根拠: 1 未満はトンネルがダウンしていることを意味します。

評価間隔: 300

保留期間: 900

リカバリ期間: 900

TunnelState (トンネルレベル)

ラベル: TunnelIpAddress

アラームの説明: 特定の VPN トンネルが DOWN 状態になっている場合のアラーム。

目的: DOWN 状態になっている特定のトンネルを検出します。

PromQL 基準: min({__name__="TunnelState", "@instrumentation.@name"="cloudwatch.aws/vpn", TunnelIpAddress="IP"}) < 1

推奨しきい値: 1 (クエリに埋め込み)

しきい値の根拠: 1 未満はトンネルがダウンしていることを意味します。

評価間隔: 300

保留期間: 900

リカバリ期間: 900