-
logpile v1.25 Stable
released this
2026-07-29 10:32:52 +03:00 | 55 commits to main since this releaseЧто нового
Новое: раздельная идентичность NVIDIA HGX tray/baseboard (Inspur/Kaytus)
Для onekeylog-дампов Inspur/Kaytus (HGX B200, KR9288-X3) парсер раньше отдавал
в качестве идентичности «GPU-платы» только механический FRU-серийник вендора
(component/fru.txt,Board Product : CA) — это серийник карриера/трея,
привязанный к шасси, который не меняется при замене самой NVIDIA
HGX-платы (SXM+NVSwitch, «delta board»). Из-за этого анализ замены платы по
серийнику давал ложный вывод «плату не меняли».Теперь парсер читает настоящую аппаратную идентичность (Model/PartNumber/
SerialNumber для HGX tray и HGX baseboard) из
log/bmc/oem-commer-log/HGX_HWInfo_FWVersion.logи отдаёт её отдельной
сущностью инвентаря (HardwareConfig.HGX), не смешивая с общим FRU. Заодно
значения-заглушки Redfish (NA/N/A) для отключённых GPU больше не
просачиваются в серийник/модель/партномер.Исправление: HGX-парсер больше не терял повторяющиеся алармы
ParseIDLLogдедуплицировал события поeventID|eventType|description—
для повторяющегося аларма (например, флапающая проверка присутствия PCIe
на HGX-платах Inspur) это одинаково для каждого повторения, и все повторные
occurrences схлопывались в первое. В результатеapplyGPUStatusFromEvents
считал состояние GPU по устаревшему, урезанному списку событий и мог
пометить сбойный GPU как исправный. Дедупликация теперь учитывает и
временную метку, так что повторяющиеся алармы больше не теряются.Новое: поддержка ещё одного варианта onekeylog-раскладки Inspur HGX
Дампы вида
dump_<serial>_<timestamp>/(проверено на HGX B200, KR9288-X3)
используют раскладку безdevicefrusdr.log:- FRU и sensors парсятся из сырого текстового вывода
ipmitool
(component/fru.txt,component/sensor.txt/sdr.txt). - PCIe/GPU presence и link state читаются из структурного снапшота
log/bmc/diagnose/OtrdDiagnoseComponent.json, независимо от истории
алармов SEL/IDL; устройства ниже согласованной max link speed/width
помечаются как degraded. - SEL при отсутствии
selelist.csvберётся изlog/sel.csv. - Сбои BMC-компонентов (
log/bmc/commer-comp/*, включая ротированные
*.tar.gz.N) парсятся в события отдельно от SEL/IDL. - Дубликаты SEL-событий из разных источников схлопываются по
(timestamp, event_type, description). - Если после всех fallback'ов FRU/sensors всё ещё пусты, это теперь видно
какCollectionError, а не тихо пустой инвентарь.
На проверочном дампе: fru 0→21, sensors 0→303, 8 GPU видны на Gen5 x16 в
слотах 100-107.Запуск на macOS
Снимите карантинный атрибут через терминал:
xattr -d com.apple.quarantine /path/to/logpile-darwin-arm64
После этого бинарник запустится без предупреждения Gatekeeper.Downloads
- FRU и sensors парсятся из сырого текстового вывода