rune-logger

0.2.0 • Public • Published

logger

A logging library for Node.js.

Usage

基本用法

const logger = require('rune-logger')('test');

logger.info('hello');

全部配置

  • name 名称
  • level console 日志等级
  • baseLevel 全部日志等级
  • dailyLevel 文件日志等级
  • datePattern 日志文件日期格式,默认'YYYY-MM-DD'
  • timePattern 日期格式,默认'YYYY-MM-DD hh:mm:ss.SSS'
  • baseDir 日志文件夹,默认与 logger 上层目录同级
  • filename 文件名 默认由 name 决定
  • zippedArchive 是否压缩日志文件,默认 false
  • dirname 日志保存路径,默认与 node_modules 同级
  • stream 日志流,默认 null
  • maxSize 日志文件最大大小,如'20m', '100k', 默认 null
  • maxFiles 日志保存天数,默认为 30 天(30d)
  • rotate 是否保存日志文件,默认 true
  • console 是否打印到 terminal,默认 true
const logger = require('.')({
    name: 'test',
    json: true,
    level: 'INFO',
    dirname: './log',
});

logger.info('aloha');

Formats

可使用util.format支持的格式化选项.

const logger = require('.')((name: 'test'), (baseDir: 'log'));

logger.info('number is %d', 1);
logger.info('data is %j', {msg: 'hello'});

ENV

可以通过 process.env 调整如下选项

  • name: 'LOGGER'
  • baseLevel: 'LOG_BASE_LEVEL'
  • timePattern: 'LOG_TIME'
  • console: 'CONSOLE'
  • level: 'LOG_LEVEL'
  • rotate: 'ROTATE'
  • dailyLevel: 'LOG_DAILY_LEVEL'
  • datePattern: 'LOG_DATE'
  • zippedArchive: 'LOG_ZIP'
  • dirname: 'LOG_DIR'
  • maxSize: 'LOG_MAX_SIZE'
  • maxFiles: 'LOG_MAX_FILES'

例如LOG_LEVEL=DEBUG node test.js可以使得运行时的日志等级变为 DEBUG。

.logrc

可以在和项目根目录(node_modules 同级)下创建.logrc 文件,进行设置。 配置优先级比 process.env 低

Readme

Keywords

none

Package Sidebar

Install

npm i rune-logger

Weekly Downloads

1

Version

0.2.0

License

MIT

Unpacked Size

8.58 kB

Total Files

7

Last publish

Collaborators

  • xiaoyu.bai