bmcstudio_log_reviewer:基于 Web 技术的日志可视化与诊断工具项目

Restore openUBMC logs into web-style visualized pages for openUBMC Studio, with cross-file correlation, data visualization and intelligent diagnosis

Branch1Tags0

openUBMC 一键日志解析

openUBMC Studio 扩展,把 openUBMC 服务器导出的"一键日志 dump"还原成 openUBMC Web UI 风格的交互式可视化页面。原本散落在一堆文本、CSV、MDB dump 和 .gz 里的硬件库存、告警、传感器、功率、调速、性能、线缆、日志等信息,在这里变成现成的视图、图表和跨文件关联,并带智能诊断。纯 Node.js 实现,运行时零依赖。

概览

  • 一键还原现场:选中一个包含 AppDump 的 dump 目录,扩展直接在 Studio 里打开可视化面板,无需起服务、无需浏览器
  • 覆盖全栈信息:首页概览、FRU/板卡版本、告警与传感器、操作日志、功率与进风温度、性能(CPU/内存/Top)、调速、CSR、线缆检测、丝印、同步属性 Trace、系统日志、故障诊断
  • 智能诊断:基于告警/操作失败/性能规则对现场做自动检测,给出可读的诊断报告
  • 跨平台:作为 Studio 扩展随 Studio 在 macOS / Windows / Linux 运行

架构

  • 扩展入口 src/extension.ts:注册命令、构建 webview HTML、用 postMessage 桥接前后端
  • src/api-bridge.ts:把 webview 的 /api/* 请求路由到 api/*.js 处理器((req, res) 签名),无需起 HTTP 服务
  • api/*.js:从 dump 目录读取并解析各子系统数据;前端 js/ + css.js 渲染页面

Studio 本身已跨平台,扩展即覆盖 macOS / Windows / Linux。

安装与构建

需要 Node.js 18+ 和 openUBMC Studio。

npm install
npm run compile    # 编译 TypeScript 到 out/,并把前端资源装配到 webview/
npm run package    # 打包 VSIX
npm run deploy     # 打包并安装到本地 Studio,重启 Studio 窗口生效

手动安装某个 VSIX:

"/Applications/openUBMC Studio.app/Contents/Resources/app/bin/studio" \
  --install-extension bmcstudio-log-reviewer-<version>.vsix

使用

点左侧活动栏的「一键日志解析」图标打开侧边面板,里面有两个入口,也会列出最近打开过的 dump:

  • 打开压缩包:选一个 .tar.gz / .tgz / .tar / .zip 日志包,自动解压并定位 AppDump 后打开(拿到原始日志包直接用这个)
  • 打开 dump 目录:选一个已解压、含 AppDump 的文件夹

也可以在资源管理器里右键日志压缩包或 dump 文件夹,选对应命令;或用命令面板。打开后顶部标签页切换不同维度。

tests/mock_dump/ 是一份完整的样例 dump,可用于快速验证。

项目结构

src/                 # 扩展源码(extension.ts + api-bridge.ts)
api/                 # 17 个后端数据模块
js/ css.js           # 前端页面与样式
utils.js             # 路径解析 + MDB/CSV 解析器
scripts/build-webview.js   # 把前端资源装配进 webview/(打包用)
tests/               # mock_dump 与线缆检测场景夹具
docs/                # 设计文档与代码导读(GUIDE.md)

代码逐文件导读见 docs/GUIDE.md,工程化与协作约定见 AGENTS.md。

许可证

木兰宽松许可证, 第2版 (MulanPSL-2.0)

Introduction

Restore openUBMC logs into web-style visualized pages for openUBMC Studio, with cross-file correlation, data visualization and intelligent diagnosis

Customize your domain