説明
SAM関数のTracing: Activeは、LambdaがリクエストをサンプリングしてX-Rayトレースを開始する設定です。必要なトレースデータがないと、遅延やサービス間の問題を調査しにくくなることがあります。
想定される影響
他のトレース手段もなければ、呼び出し経路や失敗箇所の特定に時間がかかることがあります。
対処方法
アクティブトレースが必要ならTracing: Activeを設定してください。明示的に指定した実行ロールにはX-Rayへの書き込み権限を付与し、追跡が必要な後続呼び出しのコードを計装してください。
例
イメージベースの関数でアクティブトレースを有効にする例です。イメージと実行設定は実際の環境に合わせて指定してください。
変更前
yaml
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Resources:
Function:
Type: AWS::Serverless::Function
Properties:
PackageType: Image
ImageUri: account-id.dkr.ecr.region.amazonaws.com/ecr-repo-name:image-name
ImageConfig:
Command:
- app.lambda_handler
EntryPoint:
- entrypoint1
WorkingDirectory: workDir
Tags:
Type: AWS Serverless Function
変更後
yaml
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Resources:
Function:
Type: AWS::Serverless::Function
Properties:
PackageType: Image
ImageUri: account-id.dkr.ecr.region.amazonaws.com/ecr-repo-name:image-name
ImageConfig:
Command:
- app.lambda_handler
EntryPoint:
- entrypoint1
WorkingDirectory: workDir
Tags:
Type: AWS Serverless Function
Tracing: Active