可观测性堆栈

一个集成了Prometheus、Loki、Tempo和Grafana的完整可观测性解决方案,用于监控、日志、追踪和可视化。

  • by Prathamesh-exe
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 Prathamesh-exe/grafana-mcp

使用说明

可观测性堆栈

使用Prometheus、Loki、Tempo和Grafana完成可观测性设置。

快速开始

# Start stack
docker compose up -d

# Start app
npm install
node server.js

访问Grafana: http://localhost:3001 (管理员/管理员)

组件

  • 普罗米修斯 -指标
  • 洛基 -日志
  • 节奏 -痕迹
  • 格拉法纳 -可视化
  • Grafana MCP -AI集成

港口

服务 端口
Node.js 3000
3001号。
普罗米修斯 9090
洛基 3100
节奏 3200

用法

生成数据:

curl -X POST http://localhost:3000/execute \
  -H "Content-Type: application/json" \
  -d '{"type":"db","mode":"fail"}'

类型: db, general |模式: success, slow, fail

韵律学:

curl http://localhost:3000/metrics

Grafana MCP

使用模型上下文协议通过AI查询Grafana。

设置:

  1. 在Grafana中创建服务令牌(http://localhost:3001)
  2. 添加到 .env: GRAFANA_SERVICE_TOKEN=glsa_YOUR_TOKEN
  3. 添加到 .vscode/settings.json:
    {
      "github.copilot.chat.mcp.servers": {
        "grafana": {
          "command": "docker",
          "args": ["exec", "-i", "grafana-mcp", "/app/mcp-grafana", "-t", "stdio"]
        }
      }
    }
    
  4. 重新启动VSCode

VSCode副驾驶聊天中的用法:

  • 类型 /mcp 查看可用服务器
  • “列出我的Grafana仪表板”
  • “查询Prometheus的错误率”

看 GRAFANA_MCP_SETUP.md 了解详情。

文档

故障排除

# Check service status
docker compose ps

# View logs
docker compose logs -f grafana

# Verify targets
curl http://localhost:9090/targets

# Reset (deletes data)
docker compose down -v && docker compose up -d

示例使用(Copilot+Grafana MCP)

以下是Grafana MCP如何与可观测性数据交互的真实示例。

示例问题

  • “列出所有可用的Grafana仪表板”
  • “显示过去15分钟的错误率指标”
  • “查找与数据库故障相关的日志”
  • “将跟踪与高延迟和错误相关联”
  • “为服务错误趋势创建仪表板”

演示

使用mcp创建仪表板: https://github.com/user-attachments/assets/a5aa584c-d4a4-4a54-b6c5-b61b46e6eac4