【发布时间】:2019-08-29 16:23:39
【问题描述】:
我正在尝试记录会话用户,但它没有像我怀疑的那样工作。我在想我可以将它添加到中间件中,但显然这行不通。有没有我应该使用的策略或模式来实现这一点。
PassportAuthInterceptor 日志应该有不同的用户,但它只使用中间件设置的最后一个用户
我在 log4js 文档中看到他们使用它,但显然这似乎与我在下面演示的方式无关。
我还看到有一个AuthLibrary.currentUser() 呼叫,但我不确定如何完成此操作。
https://github.com/log4js-node/log4js-node/blob/master/docs/layouts.md#tokens
看看这就是 NestJS,我能否以某种方式将用户注入服务,因为这样可以解决我的问题。
export class LoggerMiddleware implements NestMiddleware {
private readonly logger = new AppLoggerService(LoggerMiddleware.name);
public use(req, res, next: () => void) {
log4js.getLogger('default').addContext('user', user.authName)
next();
}
}
【问题讨论】:
标签: node.js nestjs log4js-node