vrcx/README.md
Engelgardt23 4e727b669d vrcx 0.2.0-dev: BMC + SDS parallel collector
Initial commit of vrcx (Vegman Remote Collect, extended) — the BMC-only
bmccollect renamed and extended with a parallel SDS-host log branch.

- dev/prod/old repo layout
- per-host bmc/ + os/ subdirs, archives/dump_<ip>.tar.gz, outer session tarball
- SdsSession (paramiko, sudo via -S), OS_COMMAND_TABLE (lsiget, storcli, smartctl, journal, dmidecode, etc.)
- SDS IP discovery via Redfish EthernetInterfaces -> /24 ping-sweep -> arp -a
- UI shows BMC|OS dual progress per host
- CI/pyinstaller paths updated for dev/
2026-05-18 17:38:07 +03:00

49 lines
2.1 KiB
Markdown

# bmccollect
[![Latest release](https://img.shields.io/github/v/release/Engelgardt23/bmccollect)](https://github.com/Engelgardt23/bmccollect/releases/latest)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
A portable collector of YADRO BMC diagnostic logs. Re-implementation of the original VRC tool, packaged as a maintainable Python project — same output structure expected by YADRO support, but readable source, modular layout, CI-built releases.
> **Made by engelgardt.**
---
## Download
Grab the latest release: [**releases page**](https://github.com/Engelgardt23/bmccollect/releases/latest).
The asset is `bmccollect-portable-vX.Y.Z.zip`.
## Run
1. Unzip anywhere.
2. Double-click `bmccollect.exe`.
3. Paste one or more BMC IPs (whitespace / comma / newline separated). End input with an empty line.
4. Enter username (default `admin`) and password.
5. Watch the live progress table while the tool collects each BMC in parallel.
6. When it's done you get a single `out/<DDMMYYYY_HHMMSS>/<stamp>.tar.gz` ready to send to support.
`Ctrl+C` aborts. The output folder is kept regardless — you can pack it manually if needed.
## What it collects
For each BMC: `inventory.json`, `lsinventory.json`, `sensors.log`, `sellog.log`, `bmc-state.txt`, `host-state.txt`, `bmc-net-cfg.log`, `cpuinfo`, `meminfo`, `osrelease`, `disk-usage.log`, `failed-services.log`, `top.log`, `bmc-journal_full_date.log`, journals for `obmc-console` and `obmc-yadro-vrm-setter`, a Redfish `/redfish/v1/Systems` dump, and others — see [`commands.py`](src/bmccollect/commands.py) for the full command table. Adding a new artefact is one line in that table.
## Compatibility
- Output structure mirrors VRC v1.1b — YADRO support flow is unchanged.
- Tested against `vegman-sx20` BMC firmware.
- Windows 10 / 11 host (the only place this tool runs).
## Build from source
```
python -m pip install rich paramiko pyinstaller
python -m PyInstaller --onefile --console --name bmccollect --paths src bmccollect-launcher.py
```
See [`CONTRIBUTING.md`](CONTRIBUTING.md) for the full layout and release flow.
## License
MIT — see [LICENSE](LICENSE).