更新记录
1.0.0(2026-11-05) 下载此版本
1.0.0
- 首个版本,第 13 批插件。
- 分级日志 / 环形缓冲 / 脱敏 / 批量上报,全端一致
平台兼容性
PlugKit 日志套件
分级日志 / 环形缓冲 / 脱敏 / 批量上报,全端一致
纯 JS 分级日志:固定容量环形缓冲、敏感字段脱敏、采样、离线暂存、批量上报(默认关闭)、一键导出,上报端点由接入方自定义。
零第三方依赖 · 零系统权限 · 无需 uniCloud · 不联网、不采集、不上报。
5 分钟接入
- 把
uni_modules/pk-logger/拷进你的 uni-app 工程(或用 HBuilderX 从插件市场导入)。 - 在需要的地方引入:
import pk from '@/uni_modules/pk-logger/js_sdk/index.js'
pk.init(/* 可选配置 */)
const r = pk./* 方法 */()
- 完整可运行工程见
example/(导入即跑,每个公开方法都有演示按钮)。
API
| 方法 | 说明 |
|---|---|
init(options) |
enabled 默认 false;level / capacity / flushCount / flushInterval / endpoint / appKey / sampleRate / sensitive |
debug / info / warn / error(tag, msg, extra) |
四个级别写入,返回日志条目 |
child(tag) |
生成带固定 tag 的子 logger |
getBuffer() / exportText() / exportJSON() / clear() |
查看与导出 |
flush() |
批量上报(仅 enabled=true 时真正发送),返回 { sent, dropped, retried } |
addBreadcrumb(msg) / wrap(fn) |
面包屑 / 自动捕获异常并记 error |
startTimer() / stopTimer() / destroy() |
自动 flush 定时器生命周期 |
自定义传输 / 注入点(演示与单测可用)
pk.setSender(fn) 自定义批量上报通道;pk.setSleep(fn) 注入退避等待;pk._reset() 重置状态(演示/单测用)。
错误码
| 码 | 含义 |
|---|---|
E-LG-01 |
非法日志级别 |
E-LG-02 |
缓冲写入失败 |
E-LG-03 |
上报失败已重试 |
E-LG-04 |
重试耗尽丢弃 |
E-LG-05 |
本地暂存不可用已降级 |
竞品痛点 → 设计决策
| 痛点 | 本插件 |
|---|---|
| 写完日志找不到文件在哪 | 明确不做文件写入:内存环形缓冲 + 可选本地暂存,导出走 exportText()/exportJSON(),结果可预期 |
| 只能本地写,没有稳定上报通道 | 内置批量 flush + 指数退避重试 + 失败回填,上报端点由接入方自定义,可对接任意自建服务 |
| iOS / 小程序端行为不明甚至报错 | 纯 JS 全端一致;本地暂存不可用时自动降级为纯内存,如实返回 degraded 状态 |
| 强绑 uniCloud / 原生插件,要自定义基座 | 零依赖、零原生权限,uni_modules 直接导入 |
| 日志把密码、token 一起传走了 | 内置敏感键脱敏(password/token/phone/idcard 等),递归深度与长度双限制 |
| 日志无限增长拖垮内存 | 固定容量环形缓冲,超出即覆盖最旧;单次 flush 按条数与字节双上限切分 |
兼容性
见 docs/compatibility.md。纯逻辑 API 已通过 node 单测;真机项按 HBuilderX 云打包验证。
目录
pk-logger/
├── README.md / CHANGELOG.md
├── uni_modules/pk-logger/ # 发布包(package.json + js_sdk/)
├── example/ # 完整可导入 HBuilderX 工程 + 演示页
├── docs/ # 在线文档 HTML / listing.md / compatibility.md
└── tests/run.test.js # node 单测(node tests/run.test.js)

收藏人数:
下载插件并导入HBuilderX
下载插件ZIP
赞赏(0)
下载 3
赞赏 0
下载 12745488
赞赏 1959
赞赏
京公网安备:11010802035340号