在 NodeJS(环回)日志中启用时间戳
Enabling timestamp in NodeJS (loopback) Logs
我在 Docker 容器中有一个 nodeJS 环回应用程序 运行。
当我监控日志时,日志没有时间戳,导致明显的挑战。
有没有办法为这些日志启用时间戳?
谢谢
由于您没有共享您的 Dockerfile 或环回登录配置,我使用 loopback-cli 创建了一个简单的应用程序并对其进行了测试。一切正常。
创建 hello 工作,因为我在 express 上工作,但在 loopback 上工作,但请遵循这篇文章
http://loopback.io/getting-started/
这是我的 docker 文件
FROM goabode/nodejs
VOLUME [ "/opt/nodejs" ]
COPY . /opt/nodejs
WORKDIR /opt/nodejs
EXPOSE 3000
CMD [ "node" , "." ]
我在 server/boot/root.js
中添加 winston 进行测试
'use strict';
module.exports = function(server) {
var winston = require('winston');
// Install a `/` route that returns server status
var router = server.loopback.Router();
router.get('/', server.loopback.status());
router.get('/ping', function(req, res) {
winston.log('info', 'This is a log event', {timestamp: Date.now(), pid: process.pid});
winston.info('This is another log event', {timestamp: Date.now(), pid: process.pid});
res.send('pong');
});
server.use(router);
};
关注这篇文章
https://www.loggly.com/ultimate-guide/node-logging-basics/
https://docs.strongloop.com/display/SLC/Using+logging+libraries
原来我只需要添加 -t 选项。
所以..
docker service logs -ft {NAME_OF_THE_SERVICE}
将输出带有包含在输出中的 tstamp 的日志
我在 Docker 容器中有一个 nodeJS 环回应用程序 运行。
当我监控日志时,日志没有时间戳,导致明显的挑战。
有没有办法为这些日志启用时间戳?
谢谢
由于您没有共享您的 Dockerfile 或环回登录配置,我使用 loopback-cli 创建了一个简单的应用程序并对其进行了测试。一切正常。
创建 hello 工作,因为我在 express 上工作,但在 loopback 上工作,但请遵循这篇文章
http://loopback.io/getting-started/
这是我的 docker 文件
FROM goabode/nodejs
VOLUME [ "/opt/nodejs" ]
COPY . /opt/nodejs
WORKDIR /opt/nodejs
EXPOSE 3000
CMD [ "node" , "." ]
我在 server/boot/root.js
中添加 winston 进行测试
'use strict';
module.exports = function(server) {
var winston = require('winston');
// Install a `/` route that returns server status
var router = server.loopback.Router();
router.get('/', server.loopback.status());
router.get('/ping', function(req, res) {
winston.log('info', 'This is a log event', {timestamp: Date.now(), pid: process.pid});
winston.info('This is another log event', {timestamp: Date.now(), pid: process.pid});
res.send('pong');
});
server.use(router);
};
关注这篇文章
https://www.loggly.com/ultimate-guide/node-logging-basics/
https://docs.strongloop.com/display/SLC/Using+logging+libraries
原来我只需要添加 -t 选项。
所以..
docker service logs -ft {NAME_OF_THE_SERVICE}
将输出带有包含在输出中的 tstamp 的日志