Mikhail Chusavitin f2c04cf0e8 fix(inspur): parse CPUs from component.log and fix DIMM present detection
Two bugs in onekeylog archives that lack asset.json:

- CPU count was always 0: ParseComponentLog never parsed the "RESTful CPU
  info" section. Added parseCPUInfo as a fallback when hw.CPUs is empty
  (asset.json remains the primary source when present). Also worked around
  a Go JSON case-insensitive collision between "proc_id" (int) and
  "PROC_ID" (string CPUID) by adding an explicit PROC_ID field with an
  exact-case tag.

- Only 1 of 2 DIMMs shown: Present condition required mem_mod_size > 0,
  but some BMC firmware reports size=0 for a physically installed module
  while still providing serial and part number. Now treats a DIMM as
  present when status=1 and any of size/serial/partnum is non-empty.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21 14:13:55 +03:00
2026-02-25 13:31:54 +03:00
2026-03-16 00:20:11 +03:00
2026-03-15 16:35:16 +03:00
2026-03-15 16:35:16 +03:00
2026-03-16 00:20:11 +03:00
2026-03-15 16:35:16 +03:00

LOGPile

Standalone Go application for BMC diagnostics analysis with an embedded web UI.

What it does

  • Parses vendor diagnostic archives into a normalized hardware inventory
  • Collects live BMC data via Redfish
  • Exports normalized data as CSV, raw re-analysis bundles, and Reanimator JSON
  • Runs as a single Go binary with embedded UI assets

Documentation

Run

make build
./bin/logpile

Default port: 8082

License

MIT (see LICENSE)

Description
BMC Log analyzer
Readme 38 MiB
logpile v1.17 Latest
2026-05-21 14:37:26 +03:00
Languages
Go 91.2%
JavaScript 5.3%
CSS 1.7%
HTML 1.1%
Shell 0.6%
Other 0.1%