在此方面,我将不胜感激。
我正在使用带有自定义工具的NodeJS进行新Relic Web事务跟踪。
我当前的代码实现是这样:
exports.retrieve = function (req, res) {
let lockedData = {};
header.setHeaders(res);
newrelic.startSegment('service.isItemActive()', true, () => {
return service.isItemActive(req.params.worklistItemId)
}).then(() => {
newrelic.startSegment('service.checkItemLock()', true, () => {
return service.checkItemLock(req.params.worklistItemId, req.query.email)
}).then((_lockedData) => {
lockedData = _lockedData;
newrelic.startSegment('PDFService.getPDFReport()', true, () => {
return PDFService.getPDFReport(req.params.worklistItemId, req.query.email, 'preview')
}).then(function(result){
const data = {
pdf: result.pdf,
lockedData: lockedData,
queueId: result.queueId,
onHold: result.onHold,
pdfLoad: result.pdfLoad
};
return res.status(200).send(data);
})
})
})
};
但是在New Relic仪表板中,我只能看到记录的第一段
service.isItemActive()
NR仪表板中都不会显示service.checkItemLock()和PDFService.getPDFReport()。我试图将所有方法包装在Web事务中,但仍然只能看到记录的第一段。
谢谢