功能特性
全局错误处理机制
自动错误捕获与可视化反馈系统
你在使用 其他的一些视频解析工具时,可能会遇到命令偶尔报错,想第一时间知道是哪里炸了,可是你没有时间去排查,即使你有时间,也要进入服务器查看对应的上下文日志、调用栈等信息,才能定位问题,并把问题通过 Github Issue 或者 聊天群聊报告给开发者。
本页解决了以下生产环境中的痛点:
凡是由本插件的命令执行出错时,会自动捕获异常信息并渲染错误图片反馈给用户或者主人(可通过插件配置控制),并且附带上详细的下文和调用栈所打印的 Debug 等级日志。
架构概览
机制特性
错误处理包装器
用 wrapWithErrorHandler 包装命令处理函数,出错时自动渲染错误图片:
import , { type } from 'node-karin'
const = (
async () => {
// 业务逻辑,异常会被自动捕获
return true
},
{ : '功能名称' }
)
.(/^#命令$/, )上下文日志追踪
基于 @karinjs/log4js 的 runContext API,自动收集执行期间的所有日志,方便排查问题。
import { } from 'node-karin'
const = .(async () => {
/* 业务逻辑 */
})
await .()
const = .() // 获取执行期间的日志错误图片示例
图片包含:错误类型、调用栈、业务名称、触发命令、执行日志、版本信息。
Last updated on