px普贤教程PuXian
普贤教程 › 包参考

log 包

分级日志

项值
包名log
版本0.2.0
可用版本0.1.0 / 0.2.0
入口log.px
分类可观测与测试
文件数 / 行数1 / 175

安装与引入

bash
pxpkg init          # 首次
pxpkg add log@0.2.0
pxpkg install
px
import log
所属分类教程:可观测与测试

公开接口

函数参数
log_newname, opts = null
log_enabledlg, level
log_setlg, level
log_emitlg, level, msg, fields = null
log_debuglg, msg, fields = null
log_infolg, msg, fields = null
log_warnlg, msg, fields = null
log_errorlg, msg, fields = null
其余 12 个 def(内部与辅助,可直接调用但不属稳定接口)
函数参数
log_level_valuelevel
log_tracelg, msg, fields = null
log_level_value_v2level
log_emit_jsonlg, level, msg, fields = null
log_with_fieldslg, default_fields
log_merge_fieldslg, fields
log_info_flg, msg, fields = null
log_warn_flg, msg, fields = null
log_error_flg, msg, fields = null
log_debug_flg, msg, fields = null
log_fatallg, msg, fields = null
log_emit_notimelg, level, msg, fields = null

包内说明(源码头注释)

text
============================================================
普贤生态库:registry/log —— 分级日志
------------------------------------------------------------
纯函数库(无 IO、无状态),编译(px build)与解释(px run)双模式一致。
var lg = log_new("app", {"level": "info"})   # level: debug|info|warn|error
log_info(lg, "msg") / log_debug / log_warn / log_error
log_info(lg, "msg", {"k": v})                # 结构化字段
log_set(lg, "debug")                         # 返回新 logger(不可变风格)
log_enabled(lg, "warn")                      # 级别过滤查询
输出(对齐 Go log 默认 flags):
2026-09-20 12:30:00 [INFO] app: msg k=v
说明:库不持有全局状态(写库规范);级别随 logger dict 显式传递。
log_emit 返回字符串(不打印),供测试/定制输出复用。
============================================================
创建 logger:{name, level}。opts 可选 {"level": "info"|"debug"|...}