Files
logpile/docs/bible/01-overview.md

1.6 KiB

01 — Overview

What is LOGPile?

LOGPile is a standalone Go application for BMC (Baseboard Management Controller) diagnostics analysis with an embedded web UI. It runs as a single binary with no external file dependencies.

Operating modes

Mode Entry point Description
Offline / archive POST /api/upload Upload a vendor diagnostic archive or a JSON snapshot; parse and display in UI
Live / Redfish POST /api/collect Connect to a live BMC via Redfish API, collect hardware inventory, display and export

Both modes produce the same in-memory AnalysisResult structure and expose it through the same API and UI.

Key capabilities

  • Single self-contained binary with embedded HTML/JS/CSS (no static file serving required).
  • Vendor archive parsing: Inspur/Kaytus, Supermicro, NVIDIA HGX Field Diagnostics, NVIDIA Bug Report, Unraid, XigmaNAS, Generic text fallback.
  • Live Redfish collection with async progress tracking.
  • Normalized hardware inventory: CPU / RAM / Storage / GPU / PSU / NIC / PCIe / Firmware.
  • Raw redfish_tree snapshot stored in RawPayloads for future offline re-analysis.
  • Re-upload of a JSON snapshot for offline work (/api/upload accepts AnalysisResult JSON).
  • Export in CSV, JSON (full AnalysisResult), and Reanimator format.
  • PCI device model resolution via embedded pci.ids (no hardcoded model strings).

Non-goals (current scope)

  • No persistent storage — all state is in-memory per process lifetime.
  • IPMI collector is a mock scaffold only; real IPMI support is not implemented.
  • No authentication layer on the HTTP server.