0

我在 Python v2 Lambda 中成功使用了 AWS Xray。patch_all()为 Xray 自动修补我的部分库(即 boto3)效果很好 。

我无法设置在较低级别子段中持续存在的高级注释。lambda中的注释可以这样设置吗?如果不是,它们应该如何设置?我试过获取最新的subsegmentsegment.

import json
import re
import boto3
import logging
import sys

from aws_xray_sdk.core import xray_recorder
from aws_xray_sdk.core import patch_all

patch_all()

def lambda_handler(event, context):  
  subsegment_ref = xray_recorder.current_subsegment()
  subsegment_ref.put_annotation('account_id', 'foo')
4

1 回答 1

2

Lambda 函数段不是由 X-Ray SDK 生成的。我们正在与 Lambda 团队合作以提供更好的体验,但目前没有解决方法来注释该细分。

对于注释子段,您可以在处理程序内创建一个子段,然后向其添加注释。您可以查看快速入门指南https://github.com/aws/aws-xray-sdk-python以创建自定义子段。

最简单的方法是使用上下文管理器样式:

with xray_recorder.in_subsegment('pick_a_subsegment_name') as subsegment:
        subsegment.put_annotation('key', 'value')
于 2019-05-02T21:26:00.037 回答