diff --git a/agent_based/checkpoint_vsx_system.py b/agent_based/checkpoint_vsx_system.py index ffaec8434f48e5de8f0ee911dc22c14939ee6935..92386e54dedfe7f3e5aa9672e461128711221dfd 100644 --- a/agent_based/checkpoint_vsx_system.py +++ b/agent_based/checkpoint_vsx_system.py @@ -20,6 +20,7 @@ # 2021-09-21: changed graph definition for packets graph to stack # 2021-09-24: changed graph definition for connections graph to make it scale with # the active connections (suggested by raulcurro[at]gmail[dot]com) +# moved Main IP to details, if it is not an IPv4 address # # snmpwalk sample # @@ -86,6 +87,7 @@ # } # +import re import time from dataclasses import dataclass from typing import List, Dict, Optional, Tuple @@ -187,8 +189,12 @@ def check_checkpoint_vsx_system(item, params, section: Dict[str, CheckpointVsx]) yield Result(state=State(params['state_sic_not_established']), notice='SIC not established') if vsx.vsxStatusVsType.lower() in ['virtual system', 'vsx gateway']: + ipv4 = re.compile('^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}') yield Result(state=State.OK, notice=f'System name: {item}') - yield Result(state=State.OK, summary=f'Main IP: {vsx.vsxStatusMainIP}') + if ipv4.match(vsx.vsxStatusMainIP): + yield Result(state=State.OK, summary=f'Main IP: {vsx.vsxStatusMainIP}') + else: + yield Result(state=State.OK, notice=f'Main IP: {vsx.vsxStatusMainIP}') yield Result(state=State.OK, summary=f'VS ID: {vsx.vsxStatusVSId}', details=f'Virtual system ID: {vsx.vsxStatusVSId}') yield Result(state=State.OK, notice=f'System type: {vsx.vsxStatusVsType}') diff --git a/checkpoint_vsx_system.mkp b/checkpoint_vsx_system.mkp index 006c6c9f50cdbde8c77afe5b78330e910451ce97..881a9b058643bae572bc85d3bf418bb0e53d52cf 100644 Binary files a/checkpoint_vsx_system.mkp and b/checkpoint_vsx_system.mkp differ