Description
Hello,
On FortiGate multiple VDOM context, the discovery of BGP peers is correct but the polling isn't. Only peers of the last VDOMs are correctly monitored.
For example :
CMD[/usr/bin/snmpbulkwalk -Cr'20' -v2c -c '<Community>-<VDOM>' -Pud -OQUs -m BGP4-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'<hostname>':'161' bgpPeerState]
CMD EXITCODE[0]
CMD RUNTIME[0.0121s]
STDOUT[
bgpPeerState.10.255.4.92 = established
bgpPeerState.10.255.4.93 = established
bgpPeerState.10.255.4.133 = established
bgpPeerState.10.255.4.134 = established
bgpPeerState.78.153.231.172 = established
bgpPeerState.78.153.231.173 = established
]
SNMP STATUS[TRUE]
> $af_list /opt/observium/includes/polling/bgp-peers.inc.php:243
array()SQL[SELECT * FROM `bgpPeers` WHERE `device_id` = '231']
ROWS[50]
SQL RUNTIME[0.00071716s]Peer: 10.255.4.92 (State = , AdminStatus = )
[ polled 1666613815 -> period 54 ]
RRD /opt/observium/rrd/<hostname>/bgp-10.255.4.92.rrd already exists - no need to create.RRD CMD[update <hostname>/bgp-10.255.4.92.rrd N:U:U:U:U:U --daemon unix:/var/run/rrdcached.sock]
RRD RUNTIME[0.0011s]
RRD STDOUT[OK u:0.01 s:0.00 r:0.84]
RRD_STATUS[TRUE]SQL[UPDATE `bgpPeers` set `bgpPeerInUpdates` ='',`bgpPeerOutUpdates` ='',`bgpPeerInTotalMessages` ='',`bgpPeerOutTotalMessages` ='',`bgpPeerFsmEstablishedTime` ='',`bgpPeerInUpdateElapsedTime` ='',`bgpPeer_polled` ='1666613815' WHERE `bgpPeer_id` = '17100']
ROWS[0]
SQL RUNTIME[0.00026393s]
SQL WARNINGS[
1366: Incorrect integer value: '' for column `observium`.`bgpPeers`.`bgpPeerInUpdates` at row 1
1366: Incorrect integer value: '' for column `observium`.`bgpPeers`.`bgpPeerOutUpdates` at row 1
1366: Incorrect integer value: '' for column `observium`.`bgpPeers`.`bgpPeerInTotalMessages` at row 1
1366: Incorrect integer value: '' for column `observium`.`bgpPeers`.`bgpPeerOutTotalMessages` at row 1
1366: Incorrect integer value: '' for column `observium`.`bgpPeers`.`bgpPeerFsmEstablishedTime` at row 1
1366: Incorrect integer value: '' for column `observium`.`bgpPeers`.`bgpPeerInUpdateElapsedTime` at row 1
]
Passed incorrect value to format_uptime()> $uptime /opt/observium/includes/common.inc.php:1421
null
Passed incorrect value to format_uptime()/opt/observium/includes/common.inc.php:1421
null
Full dump (anonymized) attached.
I think the array $bgp_peers is erased by the content of the last VDOM and not completed step by step.
Regards,
Boris
Attachments
Activity
Issue Type | Original: Vendor Bug [ 10000 ] | New: Bug [ 1 ] |
Resolution | New: Fixed [ 1 ] | |
Status | Original: In Progress [ 3 ] | New: Resolved [ 5 ] |
Status | Original: In Review [ 10101 ] | New: In Progress [ 3 ] |
Attachment | Original: observium-fortigate-vdom-bgp-peers.log [ 20185 ] |
Status | Original: Pending Response [ 10000 ] | New: In Review [ 10101 ] |
Status | Original: Open [ 1 ] | New: Pending Response [ 10000 ] |
Should be fixed in r12344.