# 01 — Overview ## Purpose LOGPile is a standalone Go application for BMC diagnostics analysis with an embedded web UI. It runs as a single binary and normalizes hardware data from archives or live Redfish collection. ## Operating modes | Mode | Entry point | Outcome | |------|-------------|---------| | Archive upload | `POST /api/upload` | Parse a supported archive, raw export bundle, or JSON snapshot into `AnalysisResult` | | Live collection | `POST /api/collect` | Collect from a live BMC via Redfish and store the result in memory | | Batch convert | `POST /api/convert` | Convert multiple supported input files into Reanimator JSON in a ZIP artifact | All modes converge on the same normalized hardware model and exporter pipeline. ## In scope - Single-binary desktop/server utility with embedded UI - Vendor archive parsing and live Redfish collection - Canonical hardware inventory across UI and exports - Reopenable raw export bundles for future re-analysis - Reanimator export and batch conversion workflows - Embedded `pci.ids` lookup for vendor/device name enrichment ## Current vendor coverage - Dell TSR - H3C SDS G5/G6 - Inspur / Kaytus - NVIDIA HGX Field Diagnostics - NVIDIA Bug Report - Unraid - XigmaNAS - Generic fallback parser ## Non-goals - Persistent storage or multi-user state - Production IPMI collection - Authentication/authorization on the built-in HTTP server - Long-term server-side job history beyond in-memory process lifetime