首页 目录 View on GitHub

the Leancloud framework G

返回

作用

包装日志对象
提供多个日志级别,可以分别管理、开关
本地调试、线上调试、线上发布环境下分别执行不同行为
记录日志到数据库、远程目标、或log4n等(还没写好)

支持级别

调用接口 提示文本 颜色
print ECHO 亮蓝
debug DEBUG 亮白
info INFO 亮蓝
log LOG 默认白
success SUCCESS 亮绿
warn WARN 棕黄
error ERROR 红+闪烁
trace TRACE

其中 debug 级别不会在 正式环境(CONFIG.IS_DEBUG_ENV = CONFIG.IS_TEST_ENV = false)时显示(无论设置了什么日志目标)

配置

CONFIG.LogDatabaseName 用于记录日志的数据库名,如果不设置,则输出到标准输出(然后显示在leancloud后台)
默认 trace、debug、info 不显示,但输出到数据库时,会记录 info 级别。

示例

"print,debug,info,log,success,warn,error,trace" .split(",") .forEach(function(level){ this[level]( '%s an object "%s" and an array [%s]!!!', level, { hello: "world" }, [1, 2, '3'] ); }, new Logger('测试')); screenshot of example

对象序列化表

类型 日志输出
ApiError 它的 stringify() 返回值
Error 它的 stack
函数 “[Function: xxxx]”
AV.Object 它的 toJSON() 返回值进行 JSON.stringify
AV.Query “[AV.Query: { 筛选条件 }]
有 inspect方法 的对象 它的 inspect() 返回值
普通数据对象 JSON.stringify()
类实例对象 JSON.stringify() * 将来会改变
null、undefined、NaN 直接输出“null”、“undefined”、“NaN”
其他普通内置类型如number、string 直接输出它的值

对象的序列化为依次进行,例如一个拥有 inspect方法 的 Error对象,按照第2条输出它的 stack,而不是调用它的 inspect 方法

API

构造函数(String message)

创建一个logger
message 必填,它是这个日志的第一部分,也是进行日志分析的重要筛选参数,一定要仔细确定。
切忌使用含糊不清、容易混淆的名字(例如上面的“测试”)。