88 lines
3.3 KiB
PHP
88 lines
3.3 KiB
PHP
<?php
|
|
/**
|
|
* Observium
|
|
*
|
|
* This file is part of Observium.
|
|
*
|
|
* @package observium
|
|
* @subpackage poller
|
|
* @copyright (C) Adam Armstrong
|
|
*
|
|
*/
|
|
|
|
echo(' TWAMP-MIB ');
|
|
|
|
//TWAMP-MIB::twampTestSessionId.1.1 = Gauge32: 1
|
|
//TWAMP-MIB::twampTestSessionId.1.10 = Gauge32: 1
|
|
//TWAMP-MIB::twampTestIndex.1.1 = Gauge32: 1
|
|
//TWAMP-MIB::twampTestIndex.1.10 = Gauge32: 10
|
|
//TWAMP-MIB::twampTestId.1.1 = Gauge32: 1856
|
|
//TWAMP-MIB::twampTestId.1.10 = Gauge32: 1847
|
|
//TWAMP-MIB::twampTestDelayMin.1.1 = INTEGER: 1.57 ms
|
|
//TWAMP-MIB::twampTestDelayMin.1.10 = INTEGER: 1.58 ms
|
|
//TWAMP-MIB::twampTestDelayMax.1.1 = INTEGER: 1.83 ms
|
|
//TWAMP-MIB::twampTestDelayMax.1.10 = INTEGER: 1.76 ms
|
|
//TWAMP-MIB::twampTestDelayAvg.1.1 = INTEGER: 1.65 ms
|
|
//TWAMP-MIB::twampTestDelayAvg.1.10 = INTEGER: 1.64 ms
|
|
//TWAMP-MIB::twampTestJitterMin.1.1 = INTEGER: .00 ms
|
|
//TWAMP-MIB::twampTestJitterMin.1.10 = INTEGER: .00 ms
|
|
//TWAMP-MIB::twampTestJitterMax.1.1 = INTEGER: .18 ms
|
|
//TWAMP-MIB::twampTestJitterMax.1.10 = INTEGER: .13 ms
|
|
//TWAMP-MIB::twampTestJitterAvg.1.1 = INTEGER: .04 ms
|
|
//TWAMP-MIB::twampTestJitterAvg.1.10 = INTEGER: .03 ms
|
|
//TWAMP-MIB::twampTestTxPkts.1.1 = Gauge32: 599
|
|
//TWAMP-MIB::twampTestTxPkts.1.10 = Gauge32: 599
|
|
//TWAMP-MIB::twampTestRxPkts.1.1 = Gauge32: 599
|
|
//TWAMP-MIB::twampTestRxPkts.1.10 = Gauge32: 599
|
|
//TWAMP-MIB::twampTestLossRatio.1.1 = Gauge32: .00
|
|
//TWAMP-MIB::twampTestLossRatio.1.10 = Gauge32: .00
|
|
//TWAMP-MIB::twampTestConnectivity.1.1 = INTEGER: yes(1)
|
|
//TWAMP-MIB::twampTestConnectivity.1.10 = INTEGER: yes(1)
|
|
//TWAMP-MIB::twampTestRoundTripDelayMin.1.1 = INTEGER: 1.58 ms
|
|
//TWAMP-MIB::twampTestRoundTripDelayMin.1.10 = INTEGER: 1.58 ms
|
|
//TWAMP-MIB::twampTestRoundTripDelayMax.1.1 = INTEGER: 1.83 ms
|
|
//TWAMP-MIB::twampTestRoundTripDelayMax.1.10 = INTEGER: 1.76 ms
|
|
//TWAMP-MIB::twampTestRoundTripDelayAvg.1.1 = INTEGER: 1.65 ms
|
|
//TWAMP-MIB::twampTestRoundTripDelayAvg.1.10 = INTEGER: 1.65 ms
|
|
|
|
foreach (array_keys($sla_db[$mib_lower]) as $index) {
|
|
$test_index = $index . '.1'; // Latest test entry always .1
|
|
$poll_oids = [
|
|
'twampTestId.' . $test_index,
|
|
'twampTestJitterAvg.' . $test_index,
|
|
'twampTestTxPkts.' . $test_index,
|
|
'twampTestRxPkts.' . $test_index,
|
|
'twampTestLossRatio.' . $test_index,
|
|
'twampTestConnectivity.' . $test_index,
|
|
'twampTestRoundTripDelayMin.' . $test_index,
|
|
'twampTestRoundTripDelayMax.' . $test_index,
|
|
'twampTestRoundTripDelayAvg.' . $test_index,
|
|
];
|
|
|
|
$sla_poll = snmp_get_multi_oid($device, $poll_oids, [], 'TWAMP-MIB');
|
|
$entry = $sla_poll[$test_index];
|
|
//print_debug_vars($entry);
|
|
|
|
$sla_state = [
|
|
'rtt_value' => $entry['twampTestRoundTripDelayAvg'],
|
|
'rtt_minimum' => $entry['twampTestRoundTripDelayMin'],
|
|
'rtt_maximum' => $entry['twampTestRoundTripDelayMax'],
|
|
'rtt_success' => $entry['twampTestRxPkts'],
|
|
'rtt_loss' => $entry['twampTestTxPkts'] - $entry['twampTestRxPkts'],
|
|
'rtt_sense' => $entry['twampTestConnectivity'],
|
|
'rtt_unixtime' => round(snmp_endtime())
|
|
];
|
|
|
|
// Standard deviation
|
|
$sla_state['rtt_stddev'] = $entry['twampTestJitterAvg']; // FIXME. I not sure!
|
|
|
|
// SLA event
|
|
$sla_array = get_state_array('twampTestConnectivity', $sla_state['rtt_sense'], 'TWAMP-MIB');
|
|
$sla_state['rtt_event'] = $sla_array['event'];
|
|
|
|
$cache_sla[$mib_lower][$index] = $sla_state;
|
|
}
|
|
|
|
|
|
// EOF
|