使用说明
日志分析MCP服务器
该项目是一个使用NestJS构建的符合MCP的日志分析服务器。它提供了一套用于分析WhatsApp Business API消息日志的工具,重点是数字指标和统计分析。
核心原则
-
数据优先方法
- 专注于数字统计,而不是原始日志
- 返回汇总计数、百分比和指标
- 原始日志仅在内部处理
- 任何原木检查的5行限制
-
安全措施
- 用于日志处理的内存高效流式传输
- 所有操作的行数限制
- 输出字符长度限制
- 结构化数值输出
入门指南
-
克隆存储库:
git clone <repository-url> cd log-searcher-mcp -
安装依赖项:
npm install -
放置日志文件:
- 创建一个
src/logs目录。 - 放置您的
.gz此目录中的日志文件。
- 创建一个
-
运行应用程序:
npm run start
可用工具
核心工具
-
health_check- 监控系统运行状况和日志处理状态
- 报告日志新鲜度和处理问题
- 提供系统建议
-
list_dates- 列出两种类型的可用日志日期
- 验证日志文件的可用性
分析工具
-
campaign_metrics// Get campaign performance metrics const metrics = await campaignMetrics.getCampaignMetrics({ campaignId: '688c7116542b75e995c8acd2', date: '2025-08-07' });回报:成功率、交付百分比、数量趋势
-
msg_lookup// Find message details (limited to 5 lines) const message = await messageLookup.lookupMessage({ msgId: 'your-message-id', date: '2025-08-07' });返回:消息详细信息和有限的交易跟踪
-
waba_metrics// Analyze WABA performance const wabaStats = await wabaMetrics.getWabaMetrics({ wabaNumber: 'your-waba-number', date: '2025-08-07' });回报:吞吐率、模板使用率、活动分布
-
traffic_metrics// Get traffic patterns const traffic = await trafficMetrics.getTrafficMetrics({ date: '2025-08-07' });回报:小时分布、峰值时间、交易量趋势
-
daily_summary// Get comprehensive daily stats const summary = await dailySummary.getDailySummary({ date: '2025-08-07' });返回:消息量、成功率、活动/模板性能
最佳实践
-
演出
- 始终如一地使用日期过滤器
- 与原始数据相比,更喜欢聚合指标
- 考虑重型作业的时间范围
-
错误处理
- 先检查可用日期
- 妥善处理丢失的日志文件
- 使用大日志监控内存使用情况
-
数据解释
- 成功率=(交付+阅读)/总计*100
- 交付率=交付/总计*100
- 流量分布=每小时消息数%
