我在服务器端使用 express js,它托管在 heroku 中。我使用 morgan 为每个请求附加一个用户 ID。尽管它像控制台日志语句一样显示在 heroku 日志中,但我无法找出此输出属于哪个请求。
// req.headers['X-Request-ID] was undefined intially.
morgan.token('userId', function getId(req) {
req.headers['X-Request-ID'] = uuid.v4();
if (req.user) {
return `userId: ${req.userId} requestId: ${req.headers['X-Request-ID']}`
}
});
// This is my actual request for which I am trying to track the userId
app.post("/api/car", parseForm, csrfProtection, auth.protected, (request, response) => {
});
Heroku 不使用此函数中生成的 requestID。相反,heroku 自己创建了一个,尽管文档说如果在请求标头中设置了一个,则将使用 requestId。
请帮助如何在heroku中为请求关联更多信息。