Sequelize的日志记录
log4js-node-日志记录
文档:https://log4js-node.github.io/log4js-node/index.html
日志等级划分
简单使用
const log4js = require('log4js');const path = require('path');log4js.configure({// 输出appenders: {sql: {type: 'dateFile', // 日志类型filename: path.resolve(__dirname, 'logs', 'sql', 'logging.log'), // 文件路径keepFileExt: true, // 保持文件后缀daysToKeep: 2, // 保留几天的日志compress: true, // 压缩maxLogSize: 1024 * 1024, // 最大储存量 达到最大存储量会将其移入备份文件夹layout: {type: 'pattern',pattern: '%c [%d{yyyy-MM-dd hh:mm:ss}] [%p]: %m%n', // 日志格式},},default: {type: 'stdout',},},// 类型categories: {sql: {appenders: ['sql'],level: 'all', //日志等级 只会显示该等级以上的日志信息,包含该等级},default: { appenders: ['default'], level: 'debug' },},});process.on('exit', ()=> {log4js.shutdown();})const sqlLogger = log4js.getLogger('sql');const defaultLogger = log4js.getLogger('default');exports.sqlLogger = sqlLogger;exports.logger = defaultLogger;
配合Sequelize的记录日志
const { Sequelize } = require('sequelize');const { sqlLogger } = require('../logger');// 方法 2: 分别传递参数 (其它数据库)const sequelize = new Sequelize('myschooldb', 'root', '123456', {host: 'localhost',dialect: 'mysql' /* 选择 'mysql' | 'mariadb' | 'postgres' | 'mssql' 其一 */,// 日志记录logging: (msg) => {sqlLogger.debug(msg)}});module.exports = sequelize
效果图
开启啦vscode的多行展示

压缩包是测试产生的,由于设置啦最大储存量,达到最大量后将其移入备份中,由于我开启啦压缩就是图上的那样
日志类型
日志信息的格式


