我正在使用winston日志框架并基于日志级别进行日志记录,但现在我在追踪错误方面遇到了困难。所以我们决定以每个用户为基础进行登录,这就是我遇到问题的地方。
我想实现什么?
- 每个用户的日志文件将每小时生成一次。(我们可以跳过此线程中的每小时限制)并且每个用户都有唯一标识符“uid”。
是)我有的?
- 我遵循此处使用的架构' https://github.com/agenor/sample-hapi-rest-api '。还存在一些额外的 lib 模块。
- 目前我正在使用 winston 库(但如果需要,我可以负担得起替换它)。
流程简介
- 目前,我只能在处理函数中访问请求对象,但我也想在 DAO、库函数中记录事件(基于每个用户)。当我将 uid 放入身份验证中间件的请求中时,我可以在请求对象的处理程序函数中使用“uid”。
我的解决方案(不优雅)
- 将请求对象(或仅 uid)传递给每个函数并记录(使用 winston)事件。自定义传输将确定放置日志的位置(在哪个文件中,基于 uid)。当然,这不是优雅的方式,因为每个函数都必须有 uid 参数才能记录事件,这似乎很糟糕。
我想从你这里得到什么?
- 一种更好、更优雅的方法,它也是可扩展的。