3.0.6 • Published 2 years ago

consoln v3.0.6

Weekly downloads
11
License
ISC
Repository
github
Last release
2 years ago

consoln

轻量、简洁、可扩展的 console 控制台

特性

  • 通过扩展机制实现控制台定制、日志存储、消息订阅等功能

  • 无扩展时可作为美化版的 console 使用

  • 支持 console 作用域,可视为轻量版的 debug 模块

  • 没有日志等级概念,使配置更加灵活,缺点是配置相对繁琐

  • 日志定期存盘,间隔 3s 存盘

  • 日志拆分,文件按天保存到 logger 目录下

  • 显示格式化的彩色文本、图标日志

  • 支持扩展自定义日志类型

Install

npm install consoln

示例

// 基础示例

import consoln from "consoln";

consoln.log("hellow");

consoln.success("hellow success");

consoln.warn({ a: "warn" });

consoln.error(new Error("xx"));

consoln.success("888");
// 扩展日志存档

import consoln from "consoln";
import logger from "consoln/logger";

consoln.show(false); // 不显示log

consoln.use(logger({ interval: 5000 })); // 添加日志存档,并设定存储间隔为5s

consoln.warn({ a: "warn" });

consoln.error(new Error("xx"));

consoln

使用方法与 console 类似

consoln.use(options)

consoln 的自定义扩展函数,options 中的同名属性会被覆盖

  • options Object 自定义配置选项

    • $type Object 类型配置选项,$type 对应类型名称

      • $method Function 调用 consoln.$type()方法时执行
参考默认配置
consoln.use({
  log: {
    show(argv) {
      console.log(`\x1b[34m●\x1b[39m`, ...argv);
    },
  },
  success: {
    show(argv) {
      console.log(`\x1b[32m√\x1b[39m`, ...argv);
    },
  },
  info: {
    show(argv) {
      console.log(`\x1b[36mi\x1b[39m`, ...argv);
    },
  },
  warn: {
    show(argv) {
      console.log(`\x1b[33m⚠\x1b[39m`, ...argv);
    },
  },
  error: {
    show(argv) {
      console.log(`\x1b[31m✖\x1b[39m`, ...argv);
    },
  },
});

consoln.show(false)

关闭控制台 log 显示功能,提升性能

consoln.log()

consoln.success()

consoln.warn()

consoln.error()

consoln.info()

作用域

日志作用域的使用方法与 debug 模块类似,区别如下:

  • debug 默认不显示 log,consoln 默认显示 log,通过 consoln.production()切换到生产环境后关闭日志。

  • 与 debug 库一样,consoln 也使用 debug 环境变量名来约束 console 的内容输出。

  • debug 库的环境变量值支持模糊匹配,consoln 不支持模糊匹配,但支持精确匹配多个作用域。

示例

// Linux

debug=demo node ./test/scope.js
debug=demo,user node ./test/scope.js
import consoln from "consoln";
const debug = consoln.scope("debug");
const user = consoln.scope("user");

debug.log("hellow debug");

debug.success("hellow debug");

user.log("hellow user");

user.success("hellow user");

consoln/logger

consoln 的日志存储扩展,每天定时拆分日志文件;

示例

import consoln from "consoln";
import logger from "consoln/logger";

consoln.use(logger({ interval: 5000 })); // 启用日志存档,并设定存储间隔为5s

consoln.warn({ a: "warn" });

consoln.error(new Error("xx"));

logger(config)

  • config Object - 插件配置项

    • interval String - 存盘周期,默认值为 5000ms
3.0.4

2 years ago

3.0.3

2 years ago

3.0.2

2 years ago

3.0.1

2 years ago

3.0.6

2 years ago

3.0.5

2 years ago

3.0.0

2 years ago

2.0.2

3 years ago

2.0.1

3 years ago

2.0.0

3 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago