日志分析服务器

一个基于NestJS构建的MCP兼容日志分析服务器,专注于WhatsApp Business API消息日志的数值指标和统计分析。

  • by AmanSurushe
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 AmanSurushe/log-searcher-mcp

使用说明

日志分析MCP服务器

该项目是一个使用NestJS构建的符合MCP的日志分析服务器。它提供了一套用于分析WhatsApp Business API消息日志的工具,重点是数字指标和统计分析。

核心原则

  1. 数据优先方法

    • 专注于数字统计,而不是原始日志
    • 返回汇总计数、百分比和指标
    • 原始日志仅在内部处理
    • 任何原木检查的5行限制
  2. 安全措施

    • 用于日志处理的内存高效流式传输
    • 所有操作的行数限制
    • 输出字符长度限制
    • 结构化数值输出

入门指南

  1. 克隆存储库:

    git clone <repository-url>
    cd log-searcher-mcp
    
  2. 安装依赖项:

    npm install
    
  3. 放置日志文件:

    • 创建一个 src/logs 目录。
    • 放置您的 .gz 此目录中的日志文件。
  4. 运行应用程序:

    npm run start
    

可用工具

核心工具

  1. health_check

    • 监控系统运行状况和日志处理状态
    • 报告日志新鲜度和处理问题
    • 提供系统建议
  2. list_dates

    • 列出两种类型的可用日志日期
    • 验证日志文件的可用性

分析工具

  1. campaign_metrics

    // Get campaign performance metrics
    const metrics = await campaignMetrics.getCampaignMetrics({
      campaignId: '688c7116542b75e995c8acd2',
      date: '2025-08-07'
    });
    

    回报:成功率、交付百分比、数量趋势

  2. msg_lookup

    // Find message details (limited to 5 lines)
    const message = await messageLookup.lookupMessage({
      msgId: 'your-message-id',
      date: '2025-08-07'
    });
    

    返回:消息详细信息和有限的交易跟踪

  3. waba_metrics

    // Analyze WABA performance
    const wabaStats = await wabaMetrics.getWabaMetrics({
      wabaNumber: 'your-waba-number',
      date: '2025-08-07'
    });
    

    回报:吞吐率、模板使用率、活动分布

  4. traffic_metrics

    // Get traffic patterns
    const traffic = await trafficMetrics.getTrafficMetrics({
      date: '2025-08-07'
    });
    

    回报:小时分布、峰值时间、交易量趋势

  5. daily_summary

    // Get comprehensive daily stats
    const summary = await dailySummary.getDailySummary({
      date: '2025-08-07'
    });
    

    返回:消息量、成功率、活动/模板性能

最佳实践

  1. 演出

    • 始终如一地使用日期过滤器
    • 与原始数据相比,更喜欢聚合指标
    • 考虑重型作业的时间范围
  2. 错误处理

    • 先检查可用日期
    • 妥善处理丢失的日志文件
    • 使用大日志监控内存使用情况
  3. 数据解释

    • 成功率=(交付+阅读)/总计*100
    • 交付率=交付/总计*100
    • 流量分布=每小时消息数%