0

我在服务器端使用 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中为请求关联更多信息。

4

1 回答 1

0

req.headers['x-request-id'] 有 heroku 生成的请求 ID。

于 2020-02-01T14:57:24.243 回答