@devflow-tools/telemetry
v0.18.5
Published
Privacy-safe event and metric persistence for DevFlow runtimes.
Readme
@devflow-tools/telemetry
记录 Agent、tool、LLM 和语义控制事件,并生成健康度、失败分类和 ROI 汇总。(v0.17.8)
安装
npm install @devflow-tools/telemetry快速开始
import { TelemetryEngine } from '@devflow-tools/telemetry';
const telemetry = new TelemetryEngine(process.cwd());
await telemetry.recordToolCall({ eventId: 'evt-1', executionId: 'run-1', timestamp: Date.now(), toolName: 'bash', toolType: 'shell', isMcpTool: false, mcpEnforced: false, mcpFallback: false, input: { command: 'npm test' }, tokensUsed: 0, duration: 1200, blocked: false });公共 API / 命令
TelemetryEngine、LogWriter、getLogWriter、emitSemanticControlLog、aggregateHealthStatus 和 createHealthSnapshot。
配置与运行时
事件默认写入 DevFlow 本地数据库/日志目录;使用 createLogger 或 LogWriter 保持结构化字段,避免直接写 stdout。
诊断日志采用统一清理策略:默认保留 30 天,单文件最大 50 MiB,项目级与全局日志预算各 256 MiB。LogCleanupService 只识别登记的 trace、session、metric、error、Hook Debug 和 HTTP error 日志;不会扫描或删除 memory snapshot、spool、pending 状态、SQLite 或业务文件。CLI 的 devflow logs cleanup 默认为 dry-run,必须显式传入 --execute 才会删除候选日志。
版本与兼容性
- 当前包版本:
0.17.8 - Node.js:未在 package manifest 声明更高版本时,使用 Node.js 18+;原生 SQLite/Playwright 能力请按对应依赖安装
- workspace 内部包应使用同一 DevFlow minor/patch 版本,避免类型和数据库 schema 不一致
相关链接
License
MIT
