otel-desktop-viewer:终极本地 OpenTelemetry 监控解决方案
otel-desktop-viewer终极本地 OpenTelemetry 监控解决方案【免费下载链接】otel-desktop-viewerotel-desktop-viewer is a CLI tool for receiving OpenTelemetry traces while working on your local machine.项目地址: https://gitcode.com/gh_mirrors/ot/otel-desktop-viewer在当今的微服务和分布式系统开发中可观测性已成为确保应用稳定性的关键因素。然而许多开发者在本地开发环境中面临一个共同挑战如何快速查看和分析 OpenTelemetry 数据传统的云监控方案配置复杂延迟高不适合本地调试。这就是otel-desktop-viewer诞生的原因——一个专为本地开发设计的强大 OpenTelemetry 数据可视化工具。otel-desktop-viewer 是一个基于 Go 语言实现的 CLI 工具它能够接收、存储和可视化 OpenTelemetry 的三大支柱数据追踪Traces、指标Metrics和日志Logs。它采用 DuckDB 作为后端存储结合 Svelte 5 构建的现代化 Web UI为开发者提供了一个简单、快速、免费的本地监控解决方案。快速上手体验三分钟启动监控安装 otel-desktop-viewer 非常简单无论你使用哪种操作系统都能快速开始。以下是几种最常用的安装方式通过 Homebrew 安装macOS 用户对于 macOS 用户这是最简单的安装方式brew tap ctrlspice/otel-desktop-viewer brew install --cask otel-desktop-viewer通过 Go 安装开发者首选如果你已经安装了 Go 开发环境可以直接从源码安装go install github.com/CtrlSpice/otel-desktop-viewerlatest export PATH$(go env GOPATH)/bin:$PATH otel-desktop-viewer通过 Docker 运行不想安装任何依赖使用 Docker 是最佳选择docker pull ghcr.io/ctrlspice/otel-desktop-viewer:latest docker run -p 8000:8000 -p 4317:4317 -p 4318:4318 ghcr.io/ctrlspice/otel-desktop-viewer:latest通过预编译二进制文件项目为各个平台提供了预编译的二进制文件你可以直接从发布页面下载对应版本平台架构文件macOSApple Silicon (M1–M4)otel-desktop-viewer_darwin_arm64.tar.gzmacOSIntelotel-desktop-viewer_darwin_amd64.tar.gzLinuxx86_64otel-desktop-viewer_linux_amd64.tar.gzLinuxarm64otel-desktop-viewer_linux_arm64.tar.gzWindowsx86_64otel-desktop-viewer_windows_amd64.zip安装完成后只需运行otel-desktop-viewer命令工具就会自动启动并打开浏览器访问http://localhost:8000。默认情况下它会在以下端口监听4317: OTLP gRPC 接收端口4318: OTLP HTTP 接收端口8000: Web UI 和 JSON-RPC API 端口核心功能详解全方位监控体验分布式追踪可视化追踪功能是 otel-desktop-viewer 的亮点之一。它能够以瀑布图形式展示跨服务的调用链让你清晰地看到请求在系统中的流转路径。在追踪界面中你可以看到服务调用关系以甘特图形式展示各个服务之间的调用顺序耗时分析精确显示每个操作的开始时间、结束时间和持续时间错误标识快速定位失败的服务调用如状态码为 Error 的 span详细元数据点击任意追踪可查看完整的 span ID、parent ID、状态码等信息指标数据可视化指标监控是系统性能分析的基础。otel-desktop-viewer 提供了多种图表类型来展示指标数据指标界面支持热图Heatmap直观展示数据在时间和数值维度上的分布直方图Histogram分析数据的分布情况分位数图表Quantiles查看数据的百分位分布实时统计显示指标的计数、平均值、最大值、最小值等统计信息日志查看与分析日志是问题排查的重要依据。otel-desktop-viewer 的日志界面提供了强大的搜索和过滤功能日志功能包括结构化日志查看支持按时间戳、严重级别、服务名称等字段筛选日志关联自动将日志与对应的追踪和 span 关联资源属性展示显示日志来源的服务名称、版本、环境等信息快速搜索支持关键词搜索和高级查询语法配置与自定义灵活适应你的需求命令行参数配置otel-desktop-viewer 提供了丰富的命令行参数让你可以根据需要灵活配置# 基本使用 otel-desktop-viewer # 使用持久化存储 otel-desktop-viewer --db ./telemetry.duckdb # 自定义端口 otel-desktop-viewer --browser-port 8080 --grpc 4319 --http 4320 # 指定主机地址 otel-desktop-viewer --host 0.0.0.0 # 禁用自动打开浏览器 otel-desktop-viewer --open-browserfalse可用参数说明参数默认值说明--browser-port8000Web UI 和 JSON-RPC API 端口--db空内存存储DuckDB 文件路径用于持久化存储--grpc4317OTLP gRPC 监听端口--http4318OTLP HTTP 监听端口--hostlocalhost所有端点的绑定地址--open-browsertrue启动时自动打开浏览器配置你的 OpenTelemetry SDK要让你的应用向 otel-desktop-viewer 发送数据只需配置 OpenTelemetry SDK 的导出器HTTP 协议配置export OTEL_EXPORTER_OTLP_ENDPOINThttp://localhost:4318 export OTEL_TRACES_EXPORTERotlp export OTEL_METRICS_EXPORTERotlp export OTEL_LOGS_EXPORTERotlp export OTEL_EXPORTER_OTLP_PROTOCOLhttp/protobufgRPC 协议配置export OTEL_EXPORTER_OTLP_ENDPOINThttp://localhost:4317 export OTEL_TRACES_EXPORTERotlp export OTEL_METRICS_EXPORTERotlp export OTEL_LOGS_EXPORTERotlp export OTEL_EXPORTER_OTLP_PROTOCOLgrpcDocker Compose 集成如果你使用 Docker Compose 管理服务可以轻松将 otel-desktop-viewer 集成到你的开发环境中version: 3.8 services: your-app: image: your-app:latest environment: - OTEL_EXPORTER_OTLP_ENDPOINThttp://otel-desktop-viewer:4318 - OTEL_EXPORTER_OTLP_PROTOCOLhttp/protobuf - OTEL_TRACES_EXPORTERotlp - OTEL_METRICS_EXPORTERotlp - OTEL_LOGS_EXPORTERotlp otel-desktop-viewer: image: ghcr.io/ctrlspice/otel-desktop-viewer:latest ports: - 8000:8000 # Web UI - 4317:4317 # gRPC - 4318:4318 # HTTP使用场景与最佳实践场景一本地微服务调试在开发微服务应用时你经常需要调试服务间的调用链路。使用 otel-desktop-viewer你可以实时查看调用链启动所有微服务在 UI 中实时查看请求的完整流转路径定位性能瓶颈通过瀑布图快速发现耗时最长的服务调用分析错误传播当某个服务失败时追踪错误是如何在系统中传播的场景二API 性能测试在进行 API 性能测试时otel-desktop-viewer 可以帮助你监控响应时间查看每个 API 端点的响应时间分布分析资源使用监控 CPU、内存等系统指标的变化趋势识别异常模式通过热图发现异常的请求模式或性能退化场景三日志集中分析当你的应用分布在多个服务中时日志分析变得复杂。使用 otel-desktop-viewer统一查看日志将所有服务的日志集中在一个界面查看日志关联追踪点击日志即可查看相关的追踪信息快速问题定位通过日志级别过滤和关键词搜索快速定位问题最佳实践建议使用持久化存储对于重要的调试会话使用--db参数将数据保存到文件方便后续分析合理配置采样率在生产环境中适当配置 OpenTelemetry 的采样率避免产生过多数据结合开发工具将 otel-desktop-viewer 集成到你的开发工作流中如 IDE 插件或 CI/CD 管道团队协作在团队中共享配置确保所有开发者使用相同的监控标准技术架构解析otel-desktop-viewer 的技术架构设计精良既保证了性能又提供了良好的扩展性数据流架构应用/SDK → OTLP (gRPC/HTTP) → otlp 接收器 → desktop 导出器 → spans/metrics/logs 数据摄入 → DuckDB 存储 → JSON-RPC API → Svelte Web UI存储设计项目采用 DuckDB 作为存储引擎具有以下优势列式存储适合分析型查询快速过滤和聚合内存存储默认使用内存存储查询速度极快持久化选项可通过--db参数启用文件存储标准化模式使用规范化的表结构存储追踪、指标和日志数据前端技术栈框架Svelte 5使用 runes$state、$derived、$effect构建工具Vite 7路由tinro5历史模式样式Tailwind CSS 4 DaisyUI 5图表layerchart搜索 UICodeMirror 6 Lezer 语法开发与贡献开发环境搭建如果你想要贡献代码或自定义功能可以按照以下步骤搭建开发环境# 克隆项目 git clone https://gitcode.com/gh_mirrors/ot/otel-desktop-viewer cd otel-desktop-viewer # 安装前端依赖 make install # 启动开发服务器两个终端 # 终端1启动 Go 服务器 make dev-go # 终端2启动前端开发服务器 make dev-ts项目结构概览otel-desktop-viewer/ ├── main.go # CLI 入口 ├── desktopexporter/ # 自定义导出器包 │ ├── factory.go # 导出器工厂 │ ├── exporter.go # pushTraces/pushMetrics/pushLogs │ └── internal/ │ ├── server/ # HTTP 服务器、JSON-RPC、静态资源 │ ├── store/ # DuckDB 存储、模式、摄入、搜索、查询 │ └── frontend/ # Svelte 5 Vite UI ├── scripts/ # OTLP 种子脚本 └── Makefile # 构建、运行、开发、测试目标贡献指南项目欢迎各种形式的贡献包括但不限于Bug 报告在项目中创建 Issue功能建议讨论新功能的想法代码贡献提交 Pull Request文档改进完善使用文档和示例在贡献之前请阅读 CONTRIBUTING.md 和 CODE_OF_CONDUCT.md。常见问题解答Q1: otel-desktop-viewer 与 Jaeger、Prometheus 有什么区别A:otel-desktop-viewer 专为本地开发设计具有以下特点轻量级单二进制文件无需复杂部署一体化同时支持追踪、指标、日志三种信号零配置开箱即用无需复杂的配置文件实时性数据实时显示适合调试场景而 Jaeger 和 Prometheus 更适合生产环境部署需要更多的配置和维护工作。Q2: 数据存储在哪里如何保证数据安全A:默认情况下数据存储在内存中程序退出后数据会丢失。如果你需要持久化存储可以使用--db参数指定 DuckDB 文件路径。数据安全方面默认只监听 localhost不会暴露到外部网络你可以使用--host参数控制监听地址数据存储在本地文件系统中不会被发送到云端Q3: 支持哪些 OpenTelemetry 协议版本A:otel-desktop-viewer 基于最新的 OpenTelemetry Collector 构建支持OTLP gRPC v1.xOTLP HTTP/protobuf v1.x与 OpenTelemetry SDK 1.x 完全兼容Q4: 如何处理大量数据A:otel-desktop-viewer 采用以下策略处理大量数据内存优化使用 DuckDB 的列式存储和压缩技术查询优化针对常见查询模式进行优化数据清理提供清理 API可以按需删除旧数据持久化存储对于大量数据建议使用--db参数启用文件存储Q5: 是否支持自定义查询和导出A:是的otel-desktop-viewer 提供了 JSON-RPC API你可以通过编程方式查询特定时间段的数据导出数据到其他格式集成到自动化测试脚本中构建自定义的监控面板API 端点位于http://localhost:8000/rpc支持标准的 JSON-RPC 2.0 协议。总结otel-desktop-viewer 是一个功能强大且易于使用的本地 OpenTelemetry 监控工具它为开发者提供了完整的可观测性解决方案。无论是调试微服务调用链、分析系统性能指标还是查看应用日志它都能提供直观的界面和强大的功能。主要优势快速启动单命令启动无需复杂配置全面监控支持追踪、指标、日志三种信号灵活存储内存或文件存储按需选择美观界面现代化的 Web UI支持暗色主题易于集成与现有 OpenTelemetry SDK 无缝集成完全免费开源项目Apache 2.0 许可证无论你是刚刚接触 OpenTelemetry 的新手还是需要高效调试工具的资深开发者otel-desktop-viewer 都能成为你开发工具箱中不可或缺的一员。立即尝试体验本地监控的便捷与高效【免费下载链接】otel-desktop-viewerotel-desktop-viewer is a CLI tool for receiving OpenTelemetry traces while working on your local machine.项目地址: https://gitcode.com/gh_mirrors/ot/otel-desktop-viewer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

真空助焊剂还原炉:深度解析高可靠性焊接的“隐形守护者”

真空助焊剂还原炉:深度解析高可靠性焊接的“隐形守护者”

技术背景:焊接空洞与氧化的全面挑战 在半导体封装与功率器件制造领域,焊接质量直接决定了产品的可靠性与寿命。传统回流焊工艺在大气环境下进行,焊料熔融时极易卷入氧气,形成微小的氧化层;同时,焊膏中的助焊…

2026/10/4 17:10:23 阅读更多 →
终极大麦抢票自动化指南:告别手动抢票的Python解决方案

终极大麦抢票自动化指南:告别手动抢票的Python解决方案

终极大麦抢票自动化指南:告别手动抢票的Python解决方案 【免费下载链接】ticket-purchase 大麦自动抢票,支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 还在为热门演唱会门票秒光而烦恼…

2026/10/5 12:01:21 阅读更多 →
3步快速解密:WannaCry文件恢复终极指南

3步快速解密:WannaCry文件恢复终极指南

3步快速解密:WannaCry文件恢复终极指南 【免费下载链接】wannakey Wannacry in-memory key recovery 项目地址: https://gitcode.com/gh_mirrors/wa/wannakey 你是否曾遭遇WannaCry勒索软件的突然袭击?看着电脑屏幕上那些被加密的文件扩展名&…

2026/10/10 23:40:04 阅读更多 →

最新新闻

GitHub趋势周报:从Star数到构建链路的开发者情报作战图

GitHub趋势周报:从Star数到构建链路的开发者情报作战图

1. 这份周报不是“新闻简报”,而是一份开发者情报作战图 你点开GitHub Trending页面,刷到第40周的榜单——Top 25里有3个Rust项目、2个TypeScript驱动的CLI工具、1个用Zig重写的POSIX工具链,还有个叫 llm-local-runner 的本地大模型调度器…

2026/10/11 19:50:45 阅读更多 →
新手PPT制作实战:素材库、AI辅助与插件全流程提效指南

新手PPT制作实战:素材库、AI辅助与插件全流程提效指南

每次看到有人电脑里躺着好几个G的PPT素材包,桌面上装满了五花八门的演示工具,我就知道这位大概率还没走出新手村。工具没少下载,做出来的片子依旧一言难尽——不是排版密密麻麻,就是配色刺眼到不敢直视,动画倒是加了不…

2026/10/11 19:50:45 阅读更多 →
自托管书签管理器Day 9:标签规范化与导入导出实战解析

自托管书签管理器Day 9:标签规范化与导入导出实战解析

第九天,这东西终于开始像点样子了。如果你一直在追我这个系列,应该知道我在折腾的是一个完全自托管的网页书签管理器——不依赖任何在线服务,数据全在自己手里那种。DAY 9这个节点挺微妙,前八天把能画的大饼都画完了,该…

2026/10/11 19:50:45 阅读更多 →
前端 monorepo 从零搭建全实践:基于 pnpm workspace 的依赖管理与构建优化

前端 monorepo 从零搭建全实践:基于 pnpm workspace 的依赖管理与构建优化

从年初开始,我所在的前端团队就一直被多仓库维护的问题困扰。某个通用组件库散落在三个不同项目的代码库里,修一个 bug 要分别发版、分别通知、分别等对方升级,光协调成本就占了大半时间。后来我们决定把核心项目统一收进一个 monorepo 里&am…

2026/10/11 19:50:45 阅读更多 →
PyTorch实现SegNet图像分割:池化索引原理与完整代码实战

PyTorch实现SegNet图像分割:池化索引原理与完整代码实战

简介:基于 PyTorch 实现 SegNet 图像分割任务的完整工程源码,面向计算机相关专业正在完成课程设计或期末大作业的学生,也适合希望借助完整项目提升实战能力的学习者。项目经导师指导并获 98 分评价,代码覆盖数据集加载、网络定义、…

2026/10/11 19:50:45 阅读更多 →
SpringBoot+Vue私房菜定制系统:从权限设计到订单闭环的完整实现解析

SpringBoot+Vue私房菜定制系统:从权限设计到订单闭环的完整实现解析

1. 项目概览:这套私房菜系统到底能做什么先说结论:这是一套典型的 SpringBoot Vue 前后端分离项目,定位是“私房菜定制 上门服务 管理后台”三位一体。源码适合拿来当毕业设计、课程设计,或者说白了,适合想快速拥有…

2026/10/11 19:49:45 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →