In my opinion the currently implemented checks for interface discards and errors are suboptimal at least when it comes to percentage thresholds which for me is the only useful threshold „unit“. In a network it is not unusual to have a few errors and discards. What really matters is if there are too much of them in propotion to the overall packets (= percent).
The problem with the current implementation is that the corresponding windows performance counters are incrementing values.
Let‘s say I have 100.00 received packets during a sample interval and 10 discards which means 0,01% discards.
Now let‘s say within the next sampling interval I receive 10 packets and 0 discards. But the check will show 100% discards because the incrementing windows discard counter is still 10.
So in my opinion it would make more sense to use a delta value for discards and errors for the percentage calculation.