Port errors, flapping and optic light levels (v0.36.0)
#249: bad frames on a link that stays up, usually a failing optic or
cable, now show up and can alert.
- Every fast poll reads each Ethernet port's error counters (FCS,
alignment, overflow, and other physical-layer errors) and link-downs,
and stores only the intervals in which they grew. Rates, not totals;
a counter reset only sets a new baseline. - New alerts, off by default, per-port cooldown: interface_errors
(errors/min over 5 min, default 10) and interface_flapping (link drops
per hour, default 3). - Ports tab: yellow outline and "!" for recent errors, red past a
threshold; the port card breaks down the last hour. Dashboard lists the
affected ports.
Optic light levels: the slow poll already read each SFP/QSFP port's
diagnostics and kept only the module type. It now keeps RX/TX power,
temperature, bias and voltage for two weeks, and compares each port with
its own usual level (median of the past week). New alert optic_degraded
(off by default): light at least 3 dB below usual, or the module at
70 C or more. The weakest lane counts on multi-lane modules. Port card
shows the light now, the usual level and a 7-day chart; same port
markers and dashboard items. Copper DAC cables report none and are
skipped.
RouterOS keeps no FEC error counters (only fec-mode), so FEC rates can't
be watched; uncorrectable errors still show as FCS errors.
Also: compression 1.8.2 and proxy-addr 2.0.8 (GHSA-vc2v-76pw-4v95,
GHSA-jqcg-44mw-7w3h).
Tested: real collection on CRS309, CRS518, CRS310 and wAP ax (no errors,
DAC only, so nothing stored); errors, flaps and optic readings injected
through the real code path for the API, markers, port card, dashboard
and alert text, then removed.
Docs: alerting.md (Interface errors and flapping, Optic light levels).
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
Container images (published once CI passes):
ghcr.io/2gt-media-group-llc/mikrotik-manager-backend:0.36.0-betaghcr.io/2gt-media-group-llc/mikrotik-manager-nginx:0.36.0-beta
Documentation: https://2gt-media-group-llc.github.io/mikrotik-manager/