@ exodus/ error- 跟踪
简单的命名空间错误跟踪软件包, 允许任何特性收集错误并创建报告
安装
pnpm add @exodus/error-tracking
使用量
此特性设计为与 @exodus/headless。见 使用 sdk。 。 。 .
来玩吧
- 打开游乐场 https://exodus-hydra.pages.dev/features/errors (英语)
- 尝试一些方法 通过UI。 这些对应于1:1
exodus.errorsAPI (英语). - 在 Dev 工具控制台中运行 :
await exodus.errors.track({
namespace: safeString`balances`,
error: new Error('Encountered an issue when computing total balances'),
context: {},
})
API 边
见 使用 sdk 关于特性插入 SDK 和 API 接口的更多细节 类型声明。 。 。 .
import { safeString } from '@exodus/safe-string'
import type { SafeContextType } from '@exodus/errors'
// Track error with optional context (see SafeContextType for available properties).
const context: SafeContextType = {
/* ... */
}
await exodus.errors.track({ namespace: safeString`wallet`, error, context })
重要内容: 这个 namespace 参数必须是SafeString来防止动态值被使用. 使用 safeString 模板标签来源 @exodus/safe-string数字 :
// ✅ Correct - safe string namespace
await exodus.errors.track({
namespace: safeString`balances`,
error: new Error('Failed to compute balances'),
})
// ❌ Incorrect - plain strings not allowed
const NAMESPACE = 'my-namespace'
await exodus.errors.track({
namespace: NAMESPACE,
error: new Error('Some error'),
})
如果你正在构建一个特性,喜欢使用该特性内部的错误跟踪,你可以依赖 errorTracking ,并将以自动命名为您特性 id 的音轨方法接收模块.