LambdaのX-Rayアクティブトレースが未設定

必要な関数のリクエストをサンプリングして追跡してください。

説明

LambdaのX-Rayアクティブトレースは、受信リクエストをサンプリングしてトレースデータを記録します。PassThroughは伝播されたトレースコンテキストを扱うモードで、アクティブトレースと同じではありません。

想定される影響

必要なトレースデータがないと、関数の遅延やサービス間呼び出しの問題を調査しにくくなるおそれがあります。

対処方法

アクティブトレースが必要な場合はtracing_mode: Activeを設定し、実行ロールに必要なX-Ray書き込み権限を付与してください。トレースが収集されることも確認してください。

例

以下はトレースモードを変更する例です。lambda_runtimeには、デプロイパッケージと互換性のあるサポート対象ランタイムを指定してください。ロールとZIPファイルは別途用意してください。

変更前

yaml
- name: ループでLambda関数を作成
  community.aws.lambda:
    name: "{{ item.name }}"
    state: present
    zip_file: "{{ item.zip_file }}"
    runtime: "{{ lambda_runtime }}"
    role: "arn:aws:iam::987654321012:role/lambda_basic_execution"
    handler: "hello_python.my_handler"
    tracing_mode: "PassThrough"
    tags:
      key1: "value1"
  loop:
    - name: HelloWorld
      zip_file: hello-code.zip
    - name: ByeBye
      zip_file: bye-code.zip

変更後

yaml
- name: ループでLambda関数を作成
  community.aws.lambda:
    name: "{{ item.name }}"
    state: present
    zip_file: "{{ item.zip_file }}"
    runtime: "{{ lambda_runtime }}"
    role: "arn:aws:iam::987654321012:role/lambda_basic_execution"
    handler: "hello_python.my_handler"
    tracing_mode: Active
    tags:
      key1: "value1"
  loop:
    - name: HelloWorld
      zip_file: hello-code.zip
    - name: ByeBye
      zip_file: bye-code.zip

参考資料