Collection of CheckMK checks (see https://checkmk.com/). All checks and plugins are provided as is. Absolutely no warranty. Send any comments to thl-cmk[at]outlook[dot]com

Skip to content
Snippets Groups Projects
Commit e01086d7 authored by thl-cmk's avatar thl-cmk :flag_na:
Browse files

Update cisco_bgp_peer

parent 25c8953c
No related branches found
No related tags found
No related merge requests found
...@@ -277,28 +277,29 @@ def parse_cisco_bgp_peer(info): ...@@ -277,28 +277,29 @@ def parse_cisco_bgp_peer(info):
oid_end, addrfamilyname, acceptedprefixes, deniedprefixes, prefixadminlimit, prefixthreshold, \ oid_end, addrfamilyname, acceptedprefixes, deniedprefixes, prefixadminlimit, prefixthreshold, \
prefixclearthreshold, advertisedprefixes, suppressedprefixes, withdrawnprefixes = entry prefixclearthreshold, advertisedprefixes, suppressedprefixes, withdrawnprefixes = entry
remoteaddr = cisco_bgp_get_peer(entry[0]) if not oid_end == '':
peer = { remoteaddr = cisco_bgp_get_peer(entry[0])
'remoteaddr': remoteaddr, peer = {
'addrfamilyname': addrfamilyname 'remoteaddr': remoteaddr,
} 'addrfamilyname': addrfamilyname
}
for key, value in [
('prefixadminlimit', prefixadminlimit),
('prefixthreshold', prefixthreshold),
('prefixclearthreshold', prefixclearthreshold),
('acceptedprefixes', acceptedprefixes),
('advertisedprefixes', advertisedprefixes),
('deniedprefixes', deniedprefixes),
('suppressedprefixes', suppressedprefixes),
('withdrawnprefixes', withdrawnprefixes),
]:
try:
peer[key] = int(value)
except ValueError:
pass
peer_prefixes.update({'%s %s' % (remoteaddr, addrfamilyname): peer}) for key, value in [
('prefixadminlimit', prefixadminlimit),
('prefixthreshold', prefixthreshold),
('prefixclearthreshold', prefixclearthreshold),
('acceptedprefixes', acceptedprefixes),
('advertisedprefixes', advertisedprefixes),
('deniedprefixes', deniedprefixes),
('suppressedprefixes', suppressedprefixes),
('withdrawnprefixes', withdrawnprefixes),
]:
try:
peer[key] = int(value)
except ValueError:
pass
peer_prefixes.update({'%s %s' % (remoteaddr, addrfamilyname): peer})
# workaround: get remote ip from cbgpPeer2Entry if cbgpPeer2AddrFamilyName is missing :-( # workaround: get remote ip from cbgpPeer2Entry if cbgpPeer2AddrFamilyName is missing :-(
elif len(cbgpPeer2Entry) > 0: elif len(cbgpPeer2Entry) > 0:
...@@ -317,34 +318,35 @@ def parse_cisco_bgp_peer(info): ...@@ -317,34 +318,35 @@ def parse_cisco_bgp_peer(info):
outupdates, intotalmessages, outtotalmessages, lasterror, fsmestablishedtransitions, fsmestablishedtime, \ outupdates, intotalmessages, outtotalmessages, lasterror, fsmestablishedtransitions, fsmestablishedtime, \
inupdateelapsedtime, lasterrortxt, prevstate = entry inupdateelapsedtime, lasterrortxt, prevstate = entry
peer = {'remoteaddr': cisco_bgp_get_peer(oid_end), if not oid_end == '':
'localaddr': bgp_render_ip_address(localaddr), peer = {'remoteaddr': cisco_bgp_get_peer(oid_end),
'localid': localidentifier, 'localaddr': bgp_render_ip_address(localaddr),
'remoteid': remoteidentifier, 'localid': localidentifier,
'lasterror': cisco_bgp_errors(lasterror), 'remoteid': remoteidentifier,
'inupdateelapsedtime': inupdateelapsedtime, 'lasterror': cisco_bgp_errors(lasterror),
'lasterrortxt': lasterrortxt, 'inupdateelapsedtime': inupdateelapsedtime,
'prevstate': int(prevstate), 'lasterrortxt': lasterrortxt,
} 'prevstate': int(prevstate),
}
for key, value in [ for key, value in [
('state', state), ('state', state),
('adminstate', adminstatus), ('adminstate', adminstatus),
('localas', localas), ('localas', localas),
('remoteas', remoteas), ('remoteas', remoteas),
('inupdates', inupdates), ('inupdates', inupdates),
('outupdates', outupdates), ('outupdates', outupdates),
('intotalmessages', intotalmessages), ('intotalmessages', intotalmessages),
('outtotalmessages', outtotalmessages), ('outtotalmessages', outtotalmessages),
('fsmestablishedtransitions', fsmestablishedtransitions), ('fsmestablishedtransitions', fsmestablishedtransitions),
('fsmestablishedtime', fsmestablishedtime), ('fsmestablishedtime', fsmestablishedtime),
]: ]:
try: try:
peer[key] = int(value) peer[key] = int(value)
except ValueError: except ValueError:
pass pass
peer_table.update({'%s' % cisco_bgp_get_peer(oid_end): peer}) peer_table.update({'%s' % cisco_bgp_get_peer(oid_end): peer})
return [peer_prefixes, peer_table] return [peer_prefixes, peer_table]
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment