在用于Node.js的New Relic Agent中,如何显示每个事务的跟踪?

时间:2019-01-29 21:51:50

标签: node.js newrelic

在我的expressjs应用中,每次有请求时,交易都会记录在New Relic上。但是,由于每个事务来自不同的用户,因此我想向该事务添加自定义属性(userId),以便知道请求来自哪个用户。

显示自定义属性的唯一方法是从事务跟踪>事务详细信息中。

但是,似乎只有多头交易才有痕迹。因此,我无法跟踪每个事务的userId。

我在做什么错?将自定义属性添加到每个交易中是一种好习惯吗?

这是我的node.js代码中的重要几行:

// beginning of the file
const newrelic = require('newrelic');

...

app.get('/blah', function(req, res, next) {
   newrelic.addCustomAttribute('test', 28);
   ...
});

1 个答案:

答案 0 :(得分:-1)

有关的NodeJS这将是最好的途径。由于Node分解数据(表达,中间件等)的方式,交易可能会有点...奇怪。

您可以做的(我已经做过的)是找到您关心的特定交易(时机缓慢等),并使用上面的代码对这些交易进行检验。然后添加一个newrelic.addCustomAttribute('ObjectName',Name);

开始调用userId。

相信“startWebTransaction”是打出来的功能呼叫的正确方法。但是检查文档(gooooooogle),您会找到示例。