Files
logpile/docs/bible/01-overview.md
Mikhail Chusavitin fcd57c1ba9 docs: introduce project Bible and consolidate all architecture documentation
- Create docs/bible/ with 10 structured chapters (overview, architecture,
  API, data models, collectors, parsers, exporters, build, testing, decisions)
- All documentation in English per ADL-007
- Record all existing architectural decisions in docs/bible/10-decisions.md
- Slim README.md to user-facing quick start only
- Replace CLAUDE.md with a single directive to read and follow the Bible
- Remove absorbed files: REANIMATOR_EXPORT.md, docs/INTEGRATION_GUIDE.md,
  and all vendor parser README.md files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-20 14:15:35 +03:00

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, 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.