henrygd
ff36138229
fix(hub): add onAfterBootstrapAndMigrations to properly queue fns after migrations
...
also remove error return from NewHub and improve comments in hub.go
2026-03-20 19:32:59 -04:00
henrygd
be70840609
test: update tests that use os.Setenv to t.Setenv
2026-03-20 15:00:28 -04:00
henrygd
565162ef5f
refactor(hub): harden/enforce pb api rules and add tests
...
- separate collection related code from hub.go
- ensure hub is bootstrapped and collections updated automatically when
calling NewHub
2026-03-20 14:39:05 -04:00
henrygd
adbfe7cfb7
chore: upgrade action and go versions in vulncheck workflow
2026-03-19 11:36:10 -04:00
henrygd
1ff7762c80
test(hub): add status alert tests covering multiple users
2026-03-18 17:44:34 -04:00
henrygd
0ab8a606e0
fix(ui): hooks bug in all systems table disk cell
2026-03-18 17:17:58 -04:00
henrygd
e4e0affbc1
test(hub): add additional tests for all system alerts
2026-03-17 18:48:54 -04:00
henrygd
c3a0e645ee
refactor: variable renaming in alerts package
2026-03-17 18:44:46 -04:00
henrygd
c6c3950fb0
refactor: add alertsCache to maintain active alert data in memory
2026-03-17 18:32:57 -04:00
henrygd
48ddc96a0d
systemd: allow timer monitoring with SERVICE_PATTERNS ( #1820 )
2026-03-17 15:11:44 -04:00
henrygd
704cb86de8
refactor: change ExpiryMap.store to be a pointer
2026-03-16 17:44:45 -04:00
henrygd
2854ce882f
fix(ui): centralize default layout width and update default setting
2026-03-16 15:23:32 -04:00
henrygd
ed50367f70
fix(agent): add fallback for podman container health ( #1475 )
2026-03-15 17:59:59 -04:00
henrygd
4ebe869591
ui: virtualize smart table
2026-03-15 15:20:07 -04:00
henrygd
c9bbbe91f2
ui: improve table col widths and hide text showing above header
2026-03-15 14:59:25 -04:00
henrygd
5bfe4f6970
agent: include ip in container port if not 0.0.0.0 or ::
2026-03-15 14:58:21 -04:00
henrygd
380d2b1091
add ports column to containers table ( #1481 )
2026-03-14 19:29:39 -04:00
henrygd
a7f99e7a8c
agent: support new Docker API Health field ( #1475 )
2026-03-14 15:26:44 -04:00
henrygd
bd94a9d142
agent: improve disk discovery / IO mapping and add tests ( #1811 )
2026-03-13 16:03:27 -04:00
henrygd
8e2316f845
refactor: simplify/improve status alert handling ( #1519 )
...
also adds new functionality to restore any pending down alerts
that were lost by hub restart before creation
2026-03-12 15:53:40 -04:00
Sven van Ginkel
0d3dfcb207
fix(hub): check if status alert is triggered before sending up alert ( #1806 )
2026-03-12 13:38:42 -04:00
henrygd
b386ce5190
hub: add ExpiryMap.UpdateExpiration and sync SMART fetch intervals ( #1800 )
...
- Update smartFetchMap expiration when agent smart interval changes
- Prevent background SMART fetching before initial system details are
loaded
- Add buffer to SMART fetch timing check
- Get rid of unnecessary pointers in expirymap
2026-03-11 16:25:52 -04:00
henrygd
e527534016
ensure deprecated system fields are migrated to newer structures
...
also removes refs to legacy load avg fields (l1, l5, l15) that were
around for a very short period
2026-03-10 18:46:57 -04:00
Victor Eduardo
ec7ad632a9
fix: Use historical records to average disk usage for extra disk alerts ( #1801 )
...
- Introduced a new test file `alerts_disk_test.go` to validate the behavior of disk alerts using historical data for extra filesystems.
- Enhanced the `HandleSystemAlerts` function to correctly calculate disk usage for extra filesystems based on historical records.
- Updated the `SystemAlertStats` struct to include `ExtraFs` for tracking additional filesystem statistics.
2026-03-09 18:32:35 -04:00
VACInc
963fce5a33
agent: mark mdraid rebuild as warning, not failed ( #1797 )
2026-03-09 17:54:53 -04:00
Sven van Ginkel
d38c0da06d
fix: bypass NIC auto-filter when interface is explicitly whitelisted via NICS ( #1805 )
...
Co-authored-by: henrygd <hank@henrygd.me >
2026-03-09 17:47:59 -04:00
henrygd
cae6ac4626
update go version to 1.26.1
2026-03-09 16:10:38 -04:00
henrygd
6b1ff264f2
gpu(amd): add workaround for misreported sysfs filesize ( #1799 )
2026-03-09 14:53:52 -04:00
henrygd
35d0e792ad
refactor(expirymap): optimize performance and add StopCleaner method
2026-03-08 19:09:41 -04:00
henrygd
654cd06b19
respect SMART_INTERVAL across agent reconnects ( #1800 )
...
Move tracking of the last SMART data fetch from individual System
instances to the SystemManager using a TTL-based ExpiryMap.
This ensures that the SMART_INTERVAL is respected even if an
agent connection is dropped and re-established, preventing
redundant data collection on every reconnect.
2026-03-08 19:03:50 -04:00
henrygd
5e1b028130
refactor(smart): improve perf by skipping ata_device_statistics parsing if unnecessary
2026-03-08 15:19:50 -04:00
henrygd
638e7dc12a
fix(smart): handle negative ATA device statistics values ( #1791 )
2026-03-08 13:34:16 -04:00
henrygd
73c262455d
refactor(agent): move GetEnv to utils package
2026-03-07 14:12:17 -05:00
henrygd
0c4d2edd45
refactor(agent): add utils package; rm utils.go and fs_utils.go
2026-03-07 13:50:49 -05:00
henrygd
8f23fff1c9
refactor: mdraid comments and organization
...
also hide serial / firmware in smart details if empty, remove a few
unnecessary ops, and add a few more passed state values
2026-02-27 14:23:10 -05:00
VACInc
02c1a0c13d
Add Linux mdraid health monitoring ( #1750 )
2026-02-27 13:42:47 -05:00
henrygd
69fdcb36ab
support ZFS ARC on freebsd
2026-02-26 18:38:54 -05:00
henrygd
b91eb6de40
improve root I/O device detection and fallback ( #1772 )
...
- Match FILESYSTEM directly against I/O devices if partition lookup
fails
- Fall back to the most active I/O device if no root device is detected
- Add WARN logs in final fallback case to most active device
2026-02-26 18:11:33 -05:00
henrygd
ec69f6c6e0
improve disk I/O device matching for partition-to-disk mismatches ( #1772 )
...
findIoDevice now normalizes device names and falls back to prefix-based
matching when partition names differ from IOCounter names (e.g. nda0p2 →
nda0 on FreeBSD). The most-active prefix-related device is selected,
avoiding the broad "most active of all" heuristic that caused Docker
misattribution in #1737 .
2026-02-26 16:59:12 -05:00
henrygd
a86cb91e07
improve install scripts with retries, validation, and better error messages
...
Add curl retries/timeouts, archive integrity checks, binary existence
checks, and temp dir cleanup on all failure paths. Unify --mirror flag
handling in hub script to match agent. Use cat instead of tee for
systemd service file, quiet systemctl output.
2026-02-26 12:29:05 -05:00
henrygd
004841717a
add checks for non-empty CPU times during initialization ( #401 )
2026-02-25 19:04:29 -05:00
henrygd
096296ba7b
fix: ensure rc.d directory exists for minimal FreeBSD installs in install-agent.sh
2026-02-25 16:22:37 -05:00
ilya
b012df5669
Fix volume path in Docker run command ( #1764 )
2026-02-24 15:47:16 -05:00
henrygd
12545b4b6d
fix: dedupe root-mirrored extra filesystems during disk discovery ( #1428 )
2026-02-24 15:41:29 -05:00
henrygd
9e2296452b
fix: compute bandwidth alerts from byte-per-second source ( #1770 )
...
Use Info.BandwidthBytes converted to MB/s with float division so
bandwidth alert checks are based on current data without integer
truncation near thresholds.
2026-02-24 13:07:27 -05:00
henrygd
ac79860d4a
dev: update biome schema and disable assist/source/organizeImports
v0.18.4
2026-02-20 15:50:44 -05:00
henrygd
e13a99fdac
ui: add fallback to display language code if no emoji / flag
2026-02-20 15:46:24 -05:00
henrygd
4cfb2a86ad
0.18.4 release
2026-02-20 15:00:15 -05:00
henrygd
191f25f6e0
ui: refactor heartbeat settings page
2026-02-20 14:48:59 -05:00
henrygd
aa8b3711d7
update translations
2026-02-19 19:22:54 -05:00