diff --git a/agent_based/checkpoint_asg_chassis.py b/agent_based/checkpoint_asg_chassis.py index 1dc51786bf51c709e337e5ae4e216a2c58f22f1b..6d0eb6a300945b90f5e48ae81931331e5a896f24 100644 --- a/agent_based/checkpoint_asg_chassis.py +++ b/agent_based/checkpoint_asg_chassis.py @@ -14,6 +14,7 @@ # 2021-09-10: rewrite parse function # 2021-09-11: added WATO, cleanup # 2022-10-23: fixed warning on upgrade "non-empty params vanished" for discovery_chassis and discovery_sgms +# 2022-11-17: added workaround for wrong SNMP data in grad/maxgrade in R81.x # # sample snmpwalk # .1.3.6.1.4.1.2620.1.48.28.1.0 = STRING: "Multi" @@ -157,8 +158,9 @@ def check_checkpoint_asg_chassis(params, section: CheckPointASGChassis) -> Check else: yield Result(state=State.OK, summary=f'Chassis {chassis.id}: {chassis.status}') - summary = f'grade: {chassis.grade}/{chassis.maxgrade}' - details = f'Chassis {chassis.id} grade: {chassis.grade}/{chassis.maxgrade}' + maxgrade = max(chassis.grad, chassis.maxgrade) # bad workaround for anmp bug in R81.x + summary = f'grade: {chassis.grade}/{maxgrade}' + details = f'Chassis {chassis.id} grade: {chassis.grade}/{maxgrade}' if chassis.grade != chassis.maxgrade: yield Result(state=State(params['state_chassis_not_max_grade']), summary=summary, details=details) else: