我在sails.js v0.12.3中定制摩根日志记录,我可以通过引入基于req对象属性的新摩根标记来丰富日志条目 - 很好。
具体来说,我们要记录控制器及其函数。
目标日志条目为:
UserController - find - GET /api/v1/users 200 125.952 ms - -
目前我们有一个单独的日志语句,由Controller函数直接编写。但是在一些负载下,它们并不会一个接一个地出现。因此,我们希望将这些信息放在一个日志条目中。
我的初步尝试:
当我记录req.options.controller时,它总是输出' session'。我想那是因为我在http.js中的中间件订单。
order: [
'startRequestTimer',
'cachePreflights',
'morgan',
'bodyParser',
'handleBodyParserError',
'compress',
'methodOverride',
'router',
'www',
'favicon',
'404',
'500'
],
但是morgan
之后router
导致根本没有摩根输出。
你有什么想法可以实现这个目标吗?
答案 0 :(得分:0)
根据我的理解,
router
决定并调用
因此,控制器是“会话”。 ({1}}开始之前(或通用/未定义的东西)。router
会返回响应
因此,如果中间件(router
)在morgan
之后,则不会触发它。在准备好响应之前,还不知道响应时间。
将router
中的中间件保留在router
中
使用请求的order
事件来打印日志。
end