Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011LffAvostt3uMkiUbVUiyM
7.1 KiB
logpile v1.31
Дата релиза: 2026-09-01
Тег: v1.31
Накопительный список изменений с версии v1.26.
Парсеры
nvidia_bug_report: извлечение ошибок GPU Xid/SXid (ADL-055)
Парсер теперь сканирует nvidia-bug-report-*.log.gz на строки NVRM: Xid /
NVRM: SXid и выдаёт события с эвристической классификацией «железо против
нагрузки» по каталогу Xid-кодов. Лавинообразный поток одного NVLink-сообщения
(наблюдалось 114 440 строк за раз) сворачивается в одно суммарное событие.
Одиночные .gz больше не обрезаются фиксированным лимитом (ADL-054)
Распаковка одиночного gzip-файла ограничивается не жёстким потолком в 50 МБ, а защитой по коэффициенту сжатия (300:1) и абсолютным потолком 1 ГБ. Большие bug-report-логи (пример: 53 МБ в распакованном виде) проходят целиком.
Inspur: часовые пояса, PPIN, активные отказы NVMe
- Уровень события берётся из RFC 5424 PRI; SEL-записи без смещения времени разрешаются по временной шкале из IDL-записей с явным смещением; убраны фиктивные записи 1970 года (ADL-056).
- PPIN процессора экспортируется как серийный номер CPU; активные отказы
NVMe-накопителей (
dev_status.log, IDL Assert/Deassert) проецируются на статусhardware.storage(ADL-057).
Inspur: комбинированный component.log без devicefrusdr.log / asset.json (ADL-064)
- Блок
RESTful FRU info:теперь разбирается — из него берутся производитель, модель, партномер и системный UUID платы (раньшеboardсодержал только серийный номер,stats.fruбыл 0). - Поле
fans_powerприходит как float (12.000000) — из-за типаintjson.Unmarshalвсего блока падал и терял все датчики вентиляторов. - Из версий прошивок (
RESTful version info) срезается суффикс со временем сборки (08.05.01 (02/21/2024 16:51:27)), иначе он вызывает событиеFIRMWARE_CHANGEDпри каждом импорте. - Разбор строк SOL smartd в формате SCSI/SAS.
xFusion: согласование выгрузок BMC и live-CD одного сервера (ADL-061, ADL-062)
- Общая нормализация в экспортёре: метки слотов памяти, модели дата-центровых GPU, тип и интерфейс накопителей, фильтрация onboard-контроллеров и служебных USB-флешек.
- OCP NIC выдаётся по одной записи на PCI-функцию без серийного номера, чтобы обе выгрузки ключевали порты по MAC и не порождали ложные install/remove.
- Строки
mem_infoвосстанавливаются при попадании байта0x0Aв SPD-поле BOM (исчез фантомный DIMM «slot s»).
xFusion: размер накопителей из disk_info (ADL-063)
Capacity : 6.986 TB теперь разбирается (единицы TB/бинарные) в size_gb.
Раньше Sscanf("%f GB") не совпадал и size_gb оставался 0 для всех NVMe.
HPE iLO AHS: дедуп DIMM по слоту (ADL-060)
Инвентарь памяти сворачивается по одной записи на слот, выигрывает самый свежий POST-снимок. Замена модуля в слоте больше не даёт лишний модуль (было 26 на 24-слотовой плате).
easy_bee: поддержка bee-support v12+
bee-audit.json и runtime-health.json ищутся не только в export/
(в v12+ они лежат в tasks/_state/ и status/).
models: PPIN как общий фолбэк серийного номера CPU (ADL-058)
models.ResolveCPUSerialNumber централизует правило: явный серийник в приоритете,
иначе валидный PPIN. Применяется в Dell, H3C, Inspur, Redfish и на границе
API/экспорта. Идентификатор никогда не выводится из сокета, модели или чужого
компонента.
Redfish-коллектор
- Восстановление GPU и NIC, терявшихся на Redfish-выгрузках xFusion G5500.
- Дедуп GPU и разрешение модели по тексту на платах xFusion без PCI-идентити.
- RAID/HBA-контроллеры поднимаются из
Storage.StorageControllers[]. - Адрес preflight-ping собирается через
net.JoinHostPortдля IPv6-хостов.
Экспорт в Reanimator
- Сбор и экспорт
storage.vendor_id/device_id(контракт ingest v2.13, ADL-053). - Дедуп NIC по нормализованному MAC; убран мусорный фолбэк серийника из redis.
- Устройства PCIe/GPU/NIC с шириной линии ниже согласованной помечаются
Warning. - Удалено мёртвое поле
bmc_event_summary; исправлена потеря статуса для CPU/GPU Inspur. - Канонический дедуп PCIe ключуется по BDF раньше серийника.
- Дизамбигуация коллизий слотов PSU и памяти; слоты PSU назначаются по порядку серийников; исправлен дедуп памяти, схлопывавший разные DIMM.
- Исправлены обрезание больших tar.gz и подстановка пустого
device_class.
Инструменты
- Новый офлайн-CLI
logpile-cpu-auditдля аудита идентити процессоров, с режимом-reanimatorдля готовых ingest-пейлоадов (ADL-059). - Пакетная конвертация выполняется на пуле воркеров.
Документация
bible-local: ADL-054 … ADL-064.
Запуск на macOS
Снимите карантинный атрибут через терминал: xattr -d com.apple.quarantine /path/to/logpile-darwin-arm64
После этого бинарник запустится без предупреждения Gatekeeper.