Zing 论坛

正文

构建端到端LLM可观测性系统:从SDK到实时仪表盘的完整实践

本文深入解析一个生产级的LLM推理可观测性系统,涵盖多提供商流式聊天机器人、SDK遥测采集、Fastify事件队列处理、实时仪表盘以及Docker/Kubernetes部署的完整技术栈。

LLM可观测性监控SDKNext.jsFastify实时仪表盘DockerKubernetes遥测
发布时间 2026/05/24 03:14最近活动 2026/05/24 03:22预计阅读 5 分钟
构建端到端LLM可观测性系统:从SDK到实时仪表盘的完整实践
1

章节 01

导读 / 主楼:构建端到端LLM可观测性系统:从SDK到实时仪表盘的完整实践

本文深入解析一个生产级的LLM推理可观测性系统,涵盖多提供商流式聊天机器人、SDK遥测采集、Fastify事件队列处理、实时仪表盘以及Docker/Kubernetes部署的完整技术栈。

3

章节 03

项目背景与核心目标

随着大型语言模型(LLM)在生产环境中的广泛应用,如何有效监控和追踪推理过程已成为一个关键挑战。传统的应用监控工具往往难以捕捉LLM特有的指标,如首Token时间(TTFT)、Token使用量、多轮对话上下文等。

这个项目提供了一个轻量级、端到端的LLM可观测性系统,它不仅仅是一个日志收集工具,而是一个完整的技术栈,涵盖了从客户端SDK采集、服务端摄入处理到实时可视化仪表盘的完整数据流。


4

章节 04

系统架构概览

整个系统采用模块化设计,数据流清晰且易于扩展:

┌──────────────┐   stream    ┌──────────────┐   batched logs   ┌────────────────┐
│   Chatbot    │ ──────────► │     SDK      │ ───────────────► │   Ingestion    │
│  (Next.js)   │   tokens    │  wrapper     │   HTTP /v1/logs  │   service      │
│  UI + API    │ ◄────────── │ (ObservableLLM)                 │   (Fastify)    │
└──────┬───────┘             └──────────────┘                  └───────┬────────┘
       │ messages / conversations (REST)                                │ event queue
       └────────────────────────────────────────────────────────────────┤
                                                                  ┌──────▼───────┐
                                                                  │    Worker    │
                                                            validate · redact PII
                                                            · extract metadata    │
                                                                  └──────┬───────┘
                                                                  ┌──────▼───────┐
                                                                  │  Database    │
                                                                  │ SQLite / PG  │
                                                                  └──────────────┘

这种架构设计的优势在于:

  • 低侵入性: SDK作为包装器,对现有代码改动极小
  • 异步处理: 事件队列解耦了数据采集和处理,避免阻塞主流程
  • 可扩展性: 支持内存队列(开发)和Redis/BullMQ(生产)两种模式
  • 隐私保护: 服务端自动脱敏PII数据

5

章节 05

1. 多提供商流式聊天机器人

聊天界面采用Next.js构建,支持真正的流式响应。每个助手消息气泡都标注了使用的提供商和模型,这让用户能够清晰地追踪多轮对话中不同模型的贡献。

系统支持8个提供商:Gemini、Groq、OpenRouter、OpenAI、Anthropic、Hugging Face、本地Ollama,以及一个用于离线测试的Mock提供商。这种设计允许用户在不同模型间无缝切换,进行A/B测试或成本优化。

6

章节 06

2. 可观测性SDK

SDK是整个系统的数据采集前端,它会自动捕获以下关键指标:

  • 延迟指标: 首Token时间(TTFT)、总响应时间
  • Token使用: 输入/输出Token数、预估成本
  • 元数据: 模型ID、提供商、会话ID、时间戳
  • 错误追踪: 状态码、错误类型、完成原因

SDK采用批量发送策略,通过HTTP将日志发送到摄入服务,既保证了实时性又减少了网络开销。

7

章节 07

3. Fastify摄入服务

摄入层基于Fastify构建,具备高性能和低资源占用的特点。它接收来自SDK的遥测数据,执行以下处理流程:

  • 验证: 检查数据格式和必填字段
  • 脱敏: 自动识别并脱敏邮箱、电话、信用卡号、IP地址等PII
  • 元数据提取: 从原始数据中提取结构化信息
  • 事件队列: 将处理后的数据推送到队列等待持久化
8

章节 08

4. 实时仪表盘

仪表盘提供了丰富的可视化功能,包括:

  • 延迟分布(P50/P95/P99)
  • 吞吐量趋势
  • 错误率监控
  • Token使用量和成本估算
  • 按提供商细分的统计
  • 时间窗口选择器(15分钟到1年)