README
pino-smart
介绍
Pino 日志行美化工具
安装
# 1. 作为工具使用
npm install pino-smart -g
# 2. 作为项目引用使用
npm install pino-smart
使用
1. 作为工具使用
node server.js | pino-colada
2. 作为项目引用使用
作为 pino prettifier 使用
const pino = require('pino'); const logger = pino({ prettyPrint: {}, prettifier: require('pino-smart') }); logger.info('hi');使用流的形式直接输出
const pino = require('pino'); const SmartStream = require('pino-smart/stream'); const stream = new SmartStream(); const logger = pino({ level: 'info', stream }); stream.pipe(process.stdout); logger.info('hi');Unicode and Windows terminal终端输出乱码, 可以转换终端编码为UTF-8形式。执行: chcp 65001
功能
1. 格式化 knex sql 日志
要想要正确的美化 knex sql 日志,需要使用 pino 记录 knex sql
const pino = require('pino');
const logger = pino({
level: 'info'
});
const knex = require('knex')({
client: 'mysql2',
connection: connectStr,
debug: true,
log: {
warn(message) {
logger.warn(message);
},
error(message) {
logger.error(message);
},
deprecate(message) {
logger.info(message);
},
debug(message) {
if (message.sql) {
logger.info(message);
} else {
logger.debug(message);
}
},
}
});
// 验证应用是否启动 knex.raw().select('select 1')
// 应用启动时,先清空设备列表
knex.raw().select('select 1')
.then(() => {
logger.info('Connection has been established successfully.')
})
.catch(err => {
logger.error(err);
});