Amazon web services API网关映射模板:$context.xrayTraceId始终为空
我的舞台启用了X射线跟踪,我可以看到X-Amzn-Trace-Id从API网关返回,而且,我可以看到从APIG到Dynamo db的整个跟踪。我想将这个跟踪id保存到表中,这样我们可以更高效地调试它,但是当我映射一个集成时Amazon web services API网关映射模板:$context.xrayTraceId始终为空,amazon-web-services,aws-api-gateway,aws-xray,Amazon Web Services,Aws Api Gateway,Aws Xray,我的舞台启用了X射线跟踪,我可以看到X-Amzn-Trace-Id从API网关返回,而且,我可以看到从APIG到Dynamo db的整个跟踪。我想将这个跟踪id保存到表中,这样我们可以更高效地调试它,但是当我映射一个集成时 "TableName" : "${aws_dynamodb_table.openApi_staging.id}", "Item": { "RequestId": { "S": "$context.requestId"
"TableName" : "${aws_dynamodb_table.openApi_staging.id}",
"Item": {
"RequestId": {
"S": "$context.requestId"
},
"Request": {
"S": "$input.path('$')"
},
"RequestedAt": {
"S": "$context.requestTime"
},
"Status":{
"S": "New"
},
"Xray": {
"S": "_$context.xrayTraceId"
}
}
X光总是空的!如何获得该id?好的,aws文档中的解决方案似乎不起作用,但是标题中存在X射线id,所以我们可以这样做
"Xray": {
"S": "$method.request.header.X-Amzn-Trace-Id"
}
这就行了 好的,aws文档中的解决方案似乎不起作用,但是标题中有X射线id,所以我们可以这样做
"Xray": {
"S": "$method.request.header.X-Amzn-Trace-Id"
}
这就行了 是下划线吗?为什么是“$context.xrayTraceId”而不是“$context.xrayTraceId”?其他值如requestid set是否正确?在那里加下划线只是因为我需要将某个g传递给dynamo,它不支持空值。下划线是什么?为什么是“$context.xrayTraceId”而不是“$context.xrayTraceId”?其他值如requestid set是否正确?在那里加下划线只是因为我需要将某个g传递给dynamo,它不支持空值