Witty-Insight存储方案深度解析:SQLite持久化与阿里云SLS导出配置指南

📅 2026/7/16 9:40:58
Witty-Insight存储方案深度解析:SQLite持久化与阿里云SLS导出配置指南
Witty-Insight存储方案深度解析SQLite持久化与阿里云SLS导出配置指南【免费下载链接】witty-insightThe witty-insight is an eBPF-based observability framework for tracing agent execution pipelines.项目地址: https://gitcode.com/openeuler/witty-insight前往项目官网免费下载https://ar.openeuler.org/ar/Witty-Insight作为一款基于eBPF的AI Agent运行时观测框架其存储方案设计巧妙地将本地持久化与云端导出完美结合。本文将详细介绍Witty-Insight的SQLite本地存储机制和阿里云SLSLog Service导出配置帮助您全面掌握这一强大的数据管理架构。存储架构概览双轨并行的智能设计Witty-Insight采用双轨存储架构既保证了数据的本地可靠性又提供了云端扩展能力SQLite本地存储默认开启提供高性能的本地数据持久化阿里云SLS导出可选配置实现云端日志集中管理与分析这种设计让Witty-Insight既能满足单机部署的轻量需求又能无缝对接企业级日志分析平台。SQLite本地存储轻量高效的持久化方案数据库结构与位置Witty-Insight的SQLite数据库默认存储在/var/log/sysak/.agentsight/目录下主要包含以下核心表表名存储内容用途audit_events审计事件记录安全审计与合规token_recordsToken消耗记录成本分析与优化http_recordsHTTP请求响应性能监控与调试genai_eventsGenAI语义事件AI调用分析interruption_events中断事件故障诊断数据库连接管理在 src/storage/sqlite/connection.rs 中实现采用WALWrite-Ahead Logging模式确保并发读写性能// 启用WAL模式提升并发性能 conn.execute_batch(PRAGMA journal_modeWAL;)?;数据生命周期管理Witty-Insight内置了智能的数据清理机制通过配置文件控制数据保留策略{ retention_days: 30, purge_interval: 1000 }retention_days数据保留天数0表示永久保留purge_interval清理检查间隔每N次插入后检查阿里云SLS导出企业级日志管理SLS导出架构设计Witty-Insight通过iLogtail实现无感SLS上传无需配置AK/SK架构设计如下eBPF Probes → Parser → Analyzer → GenAI Builder → LogtailExporter → SLS核心实现在 src/genai/logtail.rs 中支持动态配置热加载// 动态路径配置支持 pub fn set_dynamic_logtail_path(path: str) { if path.is_empty() { // 清空路径暂停SLS上传 *guard None; } else { // 设置路径启用SLS上传 *guard Some(path.to_string()); } }隐私保护与加密Witty-Insight高度重视数据隐私提供多层保护机制内容选择性上传通过trace_enabled配置控制false默认仅上传Token、模型、时序等元数据true上传完整的对话内容RSAAES混合加密敏感字段自动加密// 加密配置示例 encryption: { public_key: -----BEGIN PUBLIC KEY-----\n...\n-----END PUBLIC KEY----- }配置详解runtime.sls_logtail_pathSLS导出通过运行时配置动态控制支持三种状态配置值含义行为未设置禁用SLS仅本地SQLite存储空字符串暂停上传保留配置但暂停上传有效路径启用上传写入指定路径供iLogtail采集配置文件示例agentsight.json{ runtime: { sls_logtail_path: /var/log/sls/agentsight.log }, encryption: { public_key: } }实战配置指南从本地到云端场景一纯本地部署默认无需额外配置Witty-Insight自动启用SQLite存储# 启动追踪 sudo ./target/release/agentsight trace # 启动API服务 ./target/release/agentsight serve数据存储在/var/log/sysak/.agentsight/agentsight.db可通过HTTP API查询。场景二SLS云端导出配置SLS路径# 设置环境变量 export SLS_LOGTAIL_FILE/var/log/sls/agentsight.log # 或通过配置文件 echo {runtime: {sls_logtail_path: /var/log/sls/agentsight.log}} /etc/anolisa/enable_token_collector启用加密保护可选{ encryption: { public_key: 您的RSA公钥PEM }, trace_enabled: true }启动服务# 自动检测SLS配置并启用导出 ./target/release/agentsight serve场景三混合模式推荐同时启用SQLite和SLS获得最佳的数据可靠性与可扩展性{ runtime: { sls_logtail_path: /var/log/sls/agentsight.log }, trace_enabled: false, // 隐私安全模式 retention_days: 30 // 本地数据保留30天 }性能优化与最佳实践SQLite性能调优WAL模式优势读操作不阻塞写操作写操作不阻塞读操作支持并发连接连接池管理// 设置繁忙超时避免锁竞争 conn.busy_timeout(std::time::Duration::from_millis(500))?;定期维护# 手动执行WAL检查点 agentsight db checkpointSLS导出优化批量写入LogtailExporter自动批量处理减少IO次数动态暂停通过清空路径实现临时暂停不影响业务错误重试内置重试机制网络异常自动恢复数据查询与监控HTTP API接口Witty-Insight提供丰富的RESTful API查询存储数据接口方法功能/api/sessionsGET会话列表查询/api/token-savingsGETToken节省统计/api/interruptionsGET中断事件分析/api/skill-metricsGET技能使用统计监控指标内置Prometheus格式指标输出# 获取监控指标 curl http://localhost:8080/metrics故障排除与常见问题SQLite存储问题问题数据库文件过大解决调整retention_days或手动清理# 连接到数据库 sqlite3 /var/log/sysak/.agentsight/agentsight.db # 清理30天前的数据 DELETE FROM audit_events WHERE timestamp datetime(now, -30 days);问题并发写入冲突解决检查WAL文件状态ls -la /var/log/sysak/.agentsight/agentsight.db*SLS导出问题问题SLS上传失败解决检查iLogtail状态systemctl status ilogtail验证路径权限ls -la /var/log/sls/查看Witty-Insight日志journalctl -u agentsight问题加密配置错误解决验证RSA公钥格式# 检查公钥格式 openssl rsa -pubin -in public_key.pem -text -noout安全注意事项权限管理SQLite数据库文件默认仅root可写加密传输SLS上传支持TLS加密访问控制HTTP API可配置认证中间件数据脱敏trace_enabledfalse时自动脱敏敏感内容扩展与定制自定义存储后端Witty-Insight的存储架构支持扩展您可以通过实现StorageBackendtrait添加新的存储后端pub enum StorageBackend { Sqlite, Sls { endpoint: String, project: String, logstore: String, }, // 可扩展其他后端 Custom(Boxdyn StorageInterface), }数据导出格式支持多种导出格式ATIF格式标准化AI轨迹格式JSONL格式每行一条记录的JSON文件Prometheus格式监控指标导出自定义格式通过插件扩展总结智能存储的最佳实践Witty-Insight的存储方案体现了现代观测系统的设计理念分层架构本地SQLite保证数据可靠性云端SLS提供扩展性隐私优先默认脱敏加密可选符合安全合规要求动态配置运行时热加载无需重启服务性能优化WAL模式、批量处理、连接池等优化手段生态集成无缝对接阿里云SLS生态无论您是个人开发者还是企业用户Witty-Insight的存储方案都能满足您的需求。从简单的本地调试到复杂的云端分析这套双轨存储架构都能提供稳定、高效、安全的数据管理能力。通过合理配置SQLite和SLS您可以构建一个既具备实时分析能力又支持长期数据挖掘的完整观测体系为AI Agent的优化和运维提供坚实的数据基础。【免费下载链接】witty-insightThe witty-insight is an eBPF-based observability framework for tracing agent execution pipelines.项目地址: https://gitcode.com/openeuler/witty-insight创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考