我已在Python v2 Lambda中成功使用AWS Xray。 patch_all()
运行良好,可以自动为Xray修补我的库的一部分,即boto3。
我无法设置可保留在较低级别子细分中的高级注释。可以在lambda中设置注释吗?如果没有,应该如何设置?我尝试获取最新的subsegment
和segment
。
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')
答案 0 :(得分:1)
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')