説明
API Gateway の REST API メソッドに詳細メトリクスがないと、特定のパスとメソッドのエラーや遅延を区別しにくくなります。MetricsEnabled を無効にしても、API・ステージ単位の基本 CloudWatch メトリクスがすべて停止するわけではありません。
詳細メトリクスには追加料金がかかるため、運用に必要な範囲を選んでください。メトリクス収集、ログ記録、アラーム設定は別のものです。
想定される影響
- 個別メソッドのエラーや遅延が集計値に埋もれ、対応が遅れる場合があります。
- 不要な詳細メトリクスの収集によって監視費用が増える場合があります。
対処方法
個別の観測が必要なメソッドを選び、MethodSettings の MetricsEnabled を true にしてください。実際のメトリクス収集を確認し、エラー率や遅延など必要なアラームを別途構成してください。分析上の価値と追加費用を合わせて検討してください。
例
同じ REST API ステージの設定抜粋です。MyRestApi と ApiDeployment は別途用意してください。
変更前
yaml
Resources:
ProdStage:
Type: AWS::ApiGateway::Stage
Properties:
StageName: Prod
RestApiId: !Ref MyRestApi
DeploymentId: !Ref ApiDeployment
MethodSettings:
- ResourcePath: /*
HttpMethod: "*"
MetricsEnabled: false
ステージ内のすべてのリソースとメソッドで詳細メトリクスを無効にします。基本の API・ステージ単位のメトリクスは別途提供されます。
変更後
yaml
Resources:
ProdStage:
Type: AWS::ApiGateway::Stage
Properties:
StageName: Prod
RestApiId: !Ref MyRestApi
DeploymentId: !Ref ApiDeployment
MethodSettings:
- ResourcePath: /*
HttpMethod: "*"
MetricsEnabled: true
すべてのリソースとメソッドで詳細メトリクスを有効にします。全範囲が必要か確認し、アラームは別途構成してください。