Я использую автоматический режим AWS XRay и хочу добавить аннотацию в некоторых ситуациях (я хочу перехватить исключение и записать его в XRay в качестве аннотации).Но они не отображаются в XRay, а сегментные данные как-то отображаются в cloudwatch (хотя и без моей аннотации).
Я использую реагировать, но без промежуточного программного обеспечения Express.Я использую AWSXRay.captureAsyncFunc для захвата трассировки.
const AWSXRay = require("aws-xray-sdk");
const aws = AWSXRay.captureAWS(require("aws-sdk"));
...
exports.createSessionHandler = async event => {
const doc = AWSXRay.getSegment();
const subSeg = doc.addNewSubsegment("My SubSegment");
subSeg.addAnnotation("ABC", "test1");
await auth.getToken().then(async token => {
await AWSXRay.captureAsyncFunc("exports.getPrice", async function() {
await exports
.getPrice(param1, token)
.then(resp => {
({ price, fee } = resp);
})
.catch(err => {
subSeg.addAnnotation("ABC", "test error stuff");
console.log(`Error Getting Price: ${err}`);
// throw err;
});
});
subSeg.close();
});
}
Я ожидаю, что аннотация XRay будет иметь мою аннотацию, но ее там не было.если я смотрю в cloudwatch, я тоже не могу найти его, но я нашел там некоторые данные сегмента:
Найдены данные лямбда-трасс: Root = 1-6a8c2986-663a2c914d6da39ea37dd0a9; Родитель = 335b679c363c7aa7; Отобранный = 1 отправленный сегмент: {"trace_id:" 1-6a8c2986-663a2c914d6da39ea37dd0a9 "," id ":" d589f4a17a3a87ad "}
почему это отображается в cloudwatch?