Mikhail ChusavitinandClaude Sonnet 5 2c3072cf10 fix(exporter): fix memory dedup collapsing distinct DIMMs, disambiguate slots
dedupeMemory keyed on slot before serial, unlike dedupeStorage/dedupePSUs
which both prefer serial. Some collectors (observed on MSI CG480-S6053 with
older BEE-SP versions — confirmed reproducible across multiple servers,
fixed in newer BEE-SP versions) report every memory module at the same slot
label ("DIMM 0") even though each has a distinct real serial. Slot-first
keying collapsed all of them into a single record on export — 16 real 32GB
DIMMs (512GB) reduced to 1, discarding 15 physical modules' worth of data.

Serial now takes priority, matching storage/PSU. Also add
disambiguateMemorySlots (same pattern as the existing PSU slot fix): when
multiple already-distinct DIMMs still share a slot label, renumber them to
"DIMM {n}" by ascending serial order so Reanimator can track them by
position and results are deterministic across re-imports.

Updated the existing dedup test (was asserting the old collapse-by-slot
behavior on a same-slot/different-serial case, which was exactly the bug)
and added a dedicated regression test for the collision case.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-17 11:05:19 +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)

S
Description
BMC Log analyzer
Readme
32 MiB
logpile v1.31
Latest
2026-09-01 12:11:42 +03:00
Languages
Go 92.3%
JavaScript 4.6%
CSS 1.5%
HTML 1%
Shell 0.5%
Other 0.1%