Updated rrdtool_update() to use new array format

This commit is contained in:
laf
2015-08-18 16:26:55 +00:00
parent 84a0b8f676
commit 987634e463
65 changed files with 591 additions and 271 deletions

View File

@@ -52,16 +52,4 @@ foreach (dbFetchRows('SELECT * FROM `devices` AS D, `services` AS S WHERE S.devi
$status = '0'; $status = '0';
}//end if }//end if
$rrd = $config['rrd_dir'].'/'.$service['hostname'].'/'.safename('service-'.$service['service_type'].'-'.$service['service_id'].'.rrd');
if (!is_file($rrd)) {
rrdtool_create($rrd, 'DS:status:GAUGE:600:0:1 '.$config['rrd_rra']);
}
if ($status == '1' || $status == '0') {
rrdtool_update($rrd, 'N:'.$status);
}
else {
rrdtool_update($rrd, 'N:U');
}
} //end foreach } //end foreach

View File

@@ -13,7 +13,7 @@ if ($device['os'] == 'asa' || $device['os'] == 'pix') {
'alSslStatsPostEncryptOctets', 'alSslStatsPostEncryptOctets',
); );
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $fields, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrdfile = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('altiga-ssl.rrd'); $rrdfile = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('altiga-ssl.rrd');
@@ -28,7 +28,7 @@ if ($device['os'] == 'asa' || $device['os'] == 'pix') {
$data_array = snmpwalk_cache_oid($device, $proto, array(), 'ALTIGA-SSL-STATS-MIB'); $data_array = snmpwalk_cache_oid($device, $proto, array(), 'ALTIGA-SSL-STATS-MIB');
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($data_array[0][$oid])) { if (is_numeric($data_array[0][$oid])) {
@@ -37,13 +37,12 @@ if ($device['os'] == 'asa' || $device['os'] == 'pix') {
else { else {
$value = '0'; $value = '0';
} }
$fields[$oid] = $value;
$rrdupdate .= ":$value";
} }
if ($data_array[0]['alSslStatsTotalSessions'] || is_file($rrdfile)) { if ($data_array[0]['alSslStatsTotalSessions'] || is_file($rrdfile)) {
rrdtool_update($rrdfile, $rrdupdate); rrdtool_update($rrdfile, $fields);
} }
unset($rrdfile, $rrdupdate, $data_array); unset($rrdfile, $fields, $data_array);
}//end if }//end if

View File

@@ -46,4 +46,27 @@ if (!is_file($rrd_filename)) {
); );
}//end if }//end if
rrdtool_update($rrd_filename, "N:$total_access:$total_kbyte:$cpuload:$uptime:$reqpersec:$bytespersec:$bytesperreq:$busyworkers:$idleworkers:$score_wait:$score_start:$score_reading:$score_writing:$score_keepalive:$score_dns:$score_closing:$score_logging:$score_graceful:$score_idle:$score_open"); $fields = array(
'access' => $total_access,
'kbyte' => $total_kbyte,
'cpu' => $cpuload,
'uptime' => $uptime,
'reqpersec' => $reqpersec,
'bytespersec' => $bytespersec,
'byesperreq' => $bytesperreq,
'busyworkers' => $busyworkers,
'idleworkers' => $idleworkers,
'sb_wait' => $score_wait,
'sb_start' => $score_start,
'sb_reading' => $score_reading,
'sb_writing' => $score_writing,
'sb_keepalive' => $score_keepalive,
'sb_dns' => $score_dns,
'sb_closing' => $score_closing,
'sb_logging' => $score_logging,
'sb_graceful' => $score_graceful,
'sb_idle' => $score_idle,
'sb_open' => $score_open,
);
rrdtool_update($rrd_filename, $fields);

View File

@@ -86,5 +86,19 @@ if (!empty($agent_data['app']['bind']) && $app['app_id'] > 0) {
); );
} }
rrdtool_update($rrd_filename, 'N:'.((int) $bind_parsed['incoming_queries']['any']).':'.((int) $bind_parsed['incoming_queries']['a']).':'.((int) $bind_parsed['incoming_queries']['aaaa']).':'.((int) $bind_parsed['incoming_queries']['cname']).':'.((int) $bind_parsed['incoming_queries']['mx']).':'.((int) $bind_parsed['incoming_queries']['ns']).':'.((int) $bind_parsed['incoming_queries']['ptr']).':'.((int) $bind_parsed['incoming_queries']['soa']).':'.((int) $bind_parsed['incoming_queries']['srv']).':'.((int) $bind_parsed['incoming_queries']['spf'])); $fields = array(
'any' => ((int) $bind_parsed['incoming_queries']['any']),
'a' => ((int) $bind_parsed['incoming_queries']['a']),
'aaaa' => ((int) $bind_parsed['incoming_queries']['aaaa']),
'cname' => ((int) $bind_parsed['incoming_queries']['cname']),
'mx' => ((int) $bind_parsed['incoming_queries']['mx']),
'ns' => ((int) $bind_parsed['incoming_queries']['ns']),
'ptr' => ((int) $bind_parsed['incoming_queries']['ptr']),
'soa' => ((int) $bind_parsed['incoming_queries']['soa']),
'srv' => ((int) $bind_parsed['incoming_queries']['srv']),
'spf' => ((int) $bind_parsed['incoming_queries']['spf']),
);
rrdtool_update($rrd_filename, $fields);
}//end if }//end if

View File

@@ -27,25 +27,20 @@ if (!is_file($rrd_filename)) {
); );
} }
$ds_list = array( $fields = array(
'ns', 'ns' => $drbd['ns'],
'nr', 'nr' => $drbd['nr'],
'dw', 'dw' => $drbd['dw'],
'dr', 'dr' => $drbd['dr'],
'al', 'al' => $drbd['al'],
'bm', 'bm' => $drbd['bm'],
'lo', 'lo' => $drbd['lo'],
'pe', 'pe' => $drbd['pe'],
'ua', 'ua' => $drbd['ua'],
'ap', 'ap' => $drbd['ap'],
'oos', 'oos' => $drbd['oos'],
); );
foreach ($ds_list as $ds) {
if (empty($drbd[$ds])) {
$drbd[$ds] = 'U';
}
}
rrdtool_update($rrd_filename, 'N:'.$drbd['ns'].':'.$drbd['nr'].':'.$drbd['dw'].':'.$drbd['dr'].':'.$drbd['al'].':'.$drbd['bm'].':'.$drbd['lo'].':'.$drbd['pe'].':'.$drbd['ua'].':'.$drbd['ap'].':'.$drbd['oop']); rrdtool_update($rrd_filename, $fields);
unset($drbd); unset($drbd);

View File

@@ -25,4 +25,14 @@ if (!is_file($rrd_filename)) {
); );
} }
rrdtool_update($rrd_filename, "N:$msg_recv:$msg_rejected:$msg_relay:$msg_sent:$msg_waiting:$spam:$virus"); $fields = array(
'msg_recv' => $msg_recv,
'msg_rejected' => $msg_rejected,
'msg_relay' => $msg_relay,
'msg_sent' => $msg_sent,
'msg_waiting' => $msg_waiting,
'spam' => $spam,
'virus' => $virus,
);
rrdtool_update($rrd_filename, $fields);

View File

@@ -32,30 +32,25 @@ if (!is_file($rrd_filename)) {
); );
} }
$dslist = array( $fields = array(
'uptime', 'uptime' => $data['uptime'],
'threads', 'threads' => $data['threads'],
'rusage_user_microseconds', 'rusage_user_ms' => $data['rusage_user_microseconds'],
'rusage_system_microseconds', 'rusage_system_ms' => $data['rusage_system_microseconds'],
'curr_items', 'curr_items' => $data['curr_items'],
'total_items', 'total_items' => $data['total_items'],
'limit_maxbytes', 'limit_maxbytes' => $data['limit_maxbytes'],
'curr_connections', 'curr_connections' => $data['curr_connections'],
'total_connections', 'total_connections' => $data['total_connections'],
'connection_structures', 'conn_structures' => $data['connection_structures'],
'bytes', 'bytes' => $data['bytes'],
'cmd_get', 'cmd_get' => $data['cmd_get'],
'cmd_set', 'cmd_set' => $data['cmd_set'],
'get_hits', 'get_hits' => $data['get_hits'],
'get_misses', 'get_misses' => $data['get_misses'],
'evictions', 'evictions' => $data['evictions'],
'bytes_read', 'bytes_read' => $data['bytes_read'],
'bytes_written', 'bytes_written' => $data['bytes_written'],
); );
$values = array(); rrdtool_update($rrd_filename, $fields);
foreach ($dslist as $ds) {
$values[] = isset($data[$ds]) ? $data[$ds] : (-1);
}
rrdtool_update($rrd_filename, 'N:'.implode(':', $values));

View File

@@ -109,8 +109,8 @@ $mapping = array(
); );
$values = array(); $values = array();
foreach ($mapping as $key) { foreach ($mapping as $k => $v) {
$values[] = isset($map[$key]) ? $map[$key] : (-1); $fields[$k] = isset($map[$v]) ? $map[$v] : (-1);
} }
$string = implode(':', $values); $string = implode(':', $values);
@@ -201,7 +201,7 @@ if (!is_file($mysql_rrd)) {
); );
}//end if }//end if
rrdtool_update($mysql_rrd, "N:$string"); rrdtool_update($mysql_rrd, $fields);
// Process state statistics // Process state statistics
$mysql_status_rrd = $config['rrd_dir'].'/'.$device['hostname'].'/app-mysql-'.$app['app_id'].'-status.rrd'; $mysql_status_rrd = $config['rrd_dir'].'/'.$device['hostname'].'/app-mysql-'.$app['app_id'].'-status.rrd';
@@ -227,8 +227,9 @@ $mapping_status = array(
$values = array(); $values = array();
$rrd_create = ''; $rrd_create = '';
unset($fields);
foreach ($mapping_status as $desc => $id) { foreach ($mapping_status as $desc => $id) {
$values[] = isset($map[$id]) ? $map[$id] : (-1); $fields[$desc] = isset($map[$id]) ? $map[$id] : (-1);
$rrd_create .= ' DS:'.$id.':GAUGE:600:0:125000000000'; $rrd_create .= ' DS:'.$id.':GAUGE:600:0:125000000000';
} }
@@ -238,4 +239,4 @@ if (!is_file($mysql_status_rrd)) {
rrdtool_create($mysql_status_rrd, '--step 300 '.$rrd_create.' '.$config['rrd_rra']); rrdtool_create($mysql_status_rrd, '--step 300 '.$rrd_create.' '.$config['rrd_rra']);
} }
rrdtool_update($mysql_status_rrd, "N:$string"); rrdtool_update($mysql_status_rrd, $fields);

View File

@@ -26,7 +26,15 @@ if (!is_file($nginx_rrd)) {
} }
print "active: $active reading: $reading writing: $writing waiting: $waiting Requests: $req"; print "active: $active reading: $reading writing: $writing waiting: $waiting Requests: $req";
rrdtool_update($nginx_rrd, "N:$req:$active:$reading:$writing:$waiting"); $fields = array(
'Requests' => $req,
'Active' => $active,
'Reading' => $reading,
'Writing' => $writing,
'Waiting' => $waiting,
);
rrdtool_update($nginx_rrd, $fields);
// Unset the variables we set here // Unset the variables we set here
unset($nginx); unset($nginx);

View File

@@ -23,4 +23,12 @@ if (!is_file($rrd_filename)) {
); );
} }
rrdtool_update($rrd_filename, "N:$offset:$frequency:$jitter:$noise:$stability"); $fields = array(
'offset' => $offset,
'frequency' => $frequency,
'jitter' => $jitter,
'noise' => $noise,
'stability' => $stability,
);
rrdtool_update($rrd_filename, $fields);

View File

@@ -34,4 +34,21 @@ if (!is_file($rrd_filename)) {
); );
} }
rrdtool_update($rrd_filename, "N:$stratum:$offset:$frequency:$jitter:$noise:$stability:$uptime:$buffer_recv:$buffer_free:$buffer_used:$packets_drop:$packets_ignore:$packets_recv:$packets_sent"); $fields = array(
'stratum' => $stratum,
'offset' => $offset,
'frequency' => $frequency,
'jitter' => $jitter,
'noise' => $noise,
'stability' => $stability,
'uptime' => $uptime,
'buffer_recv' => $buffer_recv,
'buffer_free' => $buffer_free,
'buffer_used' => $buffer_used,
'packets_drop' => $packets_drop,
'packets_ignore' => $packets_ignore,
'packets_recv' => $packets_recv,
'packets_sent' => $packets_sent,
);
rrdtool_update($rrd_filename, $fields);

View File

@@ -44,4 +44,29 @@ if (!is_file($rrd_filename)) {
); );
}//end if }//end if
rrdtool_update($rrd_filename, "N:$corrupt:$def_cacheInserts:$def_cacheLookup:$latency:$pc_hit:$pc_miss:$pc_size:$qsize:$qc_hit:$qc_miss:$rec_answers:$rec_questions:$servfail:$tcp_answers:$tcp_queries:$timedout:$udp_answers:$udp_queries:$udp4_answers:$udp4_queries:$udp6_answers:$udp6_queries"); $fields = array(
'corruptPackets' => $corrupt,
'def_cacheInserts' => $def_cacheInserts,
'def_cacheLookup' => $def_cacheLookup,
'latency' => $latency,
'pc_hit' => $pc_hit,
'pc_miss' => $pc_miss,
'pc_size' => $pc_size,
'qsize' => $qsize,
'qc_hit' => $qc_hit,
'qc_miss' => $qc_miss,
'rec_answers' => $rec_answers,
'rec_questions' => $req_questions,
'servfailPackets' => $servfail,
'q_tcpAnswers' => $tcp_answers,
'q_tcpQueries' => $tcp_queries,
'q_timedout' => $timedout,
'q_udpAnswers' => $udp_answers,
'q_udpQueries' => $udp_queries,
'q_udp4Answers' => $udp4_answers,
'q_udp4Queries' => $udp4_queries,
'q_udp6Answers' => $udp6_answers,
'q_udp6Queries' => $udp6_queries,
);
rrdtool_update($rrd_filename, $fields);

View File

@@ -41,6 +41,18 @@ foreach ($servers as $item => $server) {
); );
} }
rrdtool_update($rrdfile, "N:$bitrate:$traf_in:$traf_out:$current:$status:$peak:$max:$unique"); $fields = array(
'bitrate' => $bitrate,
'traf_in' => $traf_in,
'traf_out' => $traf_out,
'current' => $current,
'status' => $status,
'peak' => $peak,
'max' => $max,
'unique' => $unique,
);
rrdtool_update($rrdfile, $fields);
}//end if }//end if
}//end foreach }//end foreach

View File

@@ -50,8 +50,11 @@ if ($device['type'] == 'wireless' && $device['os'] == 'arubaos') {
rrdtool_create($rrdfile, ' --step 300 DS:NUMAPS:GAUGE:600:0:12500000000 DS:NUMCLIENTS:GAUGE:600:0:12500000000 '.$config['rrd_rra']); rrdtool_create($rrdfile, ' --step 300 DS:NUMAPS:GAUGE:600:0:12500000000 DS:NUMCLIENTS:GAUGE:600:0:12500000000 '.$config['rrd_rra']);
} }
$cont_rrd_update = "$polled:".$aruba_stats[0]['wlsxSwitchTotalNumAccessPoints'].':'.$aruba_stats[0]['wlsxSwitchTotalNumStationsAssociated']; $fields = array(
$ret = rrdtool_update($rrdfile, $cont_rrd_update); 'NUMAPS' => $aruba_stats[0]['wlsxSwitchTotalNumAccessPoints'],
'NUMCLIENTS' => $aruba_stats[0]['wlsxSwitchTotalNumStationsAssociated'],
);
$ret = rrdtool_update($rrdfile, $fields);
// also save the info about how many clients in the same place as the wireless module // also save the info about how many clients in the same place as the wireless module
$wificlientsrrd = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('wificlients-radio1.rrd'); $wificlientsrrd = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('wificlients-radio1.rrd');
@@ -60,7 +63,10 @@ if ($device['type'] == 'wireless' && $device['os'] == 'arubaos') {
rrdtool_create($wificlientsrrd, '--step 300 DS:wificlients:GAUGE:600:-273:10000 '.$config['rrd_rra']); rrdtool_create($wificlientsrrd, '--step 300 DS:wificlients:GAUGE:600:-273:10000 '.$config['rrd_rra']);
} }
rrdtool_update($wificlientsrrd, 'N:'.$aruba_stats[0]['wlsxSwitchTotalNumStationsAssociated']); $fields = array(
'wificlients' => $aruba_stats[0]['wlsxSwitchTotalNumStationsAssociated'],
);
rrdtool_update($wificlientsrrd, $fields);
$graphs['wifi_clients'] = true; $graphs['wifi_clients'] = true;
@@ -109,7 +115,18 @@ if ($device['type'] == 'wireless' && $device['os'] == 'arubaos') {
rrdtool_create($rrd_file, "--step 300 $dslist ".$config['rrd_rra']); rrdtool_create($rrd_file, "--step 300 $dslist ".$config['rrd_rra']);
} }
rrdtool_update($rrd_file, "$polled:".$channel.':'.$txpow.':'.$radioutil.':'.$nummonclients.':'.$nummonbssid.':'.$numasoclients.':'.$interference); $fields = array(
'channel' => $channel,
'txpow' => $txpow,
'radioutil' => $radioutil,
'nummonclients' => $nummonclients,
'nummonbssid' => $nummonbssid,
'numasoclients' => $numasoclients,
'interference' => $interference,
);
rrdtool_update($rrd_file, $fields);
} }
// generate the mac address // generate the mac address

View File

@@ -158,7 +158,14 @@ if ($config['enable_bgp']) {
rrdtool_create($peerrrd, $create_rrd); rrdtool_create($peerrrd, $create_rrd);
} }
rrdtool_update("$peerrrd", "N:$bgpPeerOutUpdates:$bgpPeerInUpdates:$bgpPeerOutTotalMessages:$bgpPeerInTotalMesages:$bgpPeerFsmEstablishedTime"); $fields = array(
'bgpPeerOutUpdates' => $bgpPeerOutUpdates,
'bgpPeerInUpdates' => $bgpPeerInUpdates,
'bgpPeerOutTotal' => $bgpPeerOutTotalMessages,
'bgpPeerInTotal' => $bgpPeerInTotalMessages,
'bgpPeerEstablished' => $bgpPeerFsmEstablishedTime,
);
rrdtool_update("$peerrrd", $fields);
$peer['update']['bgpPeerState'] = $bgpPeerState; $peer['update']['bgpPeerState'] = $bgpPeerState;
$peer['update']['bgpPeerAdminStatus'] = $bgpPeerAdminStatus; $peer['update']['bgpPeerAdminStatus'] = $bgpPeerAdminStatus;
@@ -321,7 +328,15 @@ if ($config['enable_bgp']) {
rrdtool_create($cbgp_rrd, $rrd_create); rrdtool_create($cbgp_rrd, $rrd_create);
} }
rrdtool_update("$cbgp_rrd", "N:$cbgpPeerAcceptedPrefixes:$cbgpPeerDeniedPrefixes:$cbgpPeerAdvertisedPrefixes:$cbgpPeerSuppressedPrefixes:$cbgpPeerWithdrawnPrefixes"); $fields = array(
'AcceptedPrefixes' => $cbgpPeerAcceptedPrefixes,
'DeniedPrefixes' => $cbgpPeerDeniedPrefixes,
'AdvertisedPrefixes' => $cbgpPeerAdvertisedPrefixes,
'SuppressedPrefixes' => $cbgpPeerSuppressedPrefixes,
'WithdrawnPrefixes' => $cbgpPeerWithdrawnPrefixes,
);
rrdtool_update("$cbgp_rrd", $fields);
} //end foreach } //end foreach
} //end if } //end if
echo "\n"; echo "\n";

View File

@@ -79,7 +79,7 @@ foreach ($ipsec_array as $index => $tunnel) {
$rrd_create .= " DS:$oid_ds:COUNTER:600:U:1000000000"; $rrd_create .= " DS:$oid_ds:COUNTER:600:U:1000000000";
} }
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($tunnel[$oid])) { if (is_numeric($tunnel[$oid])) {
@@ -88,18 +88,16 @@ foreach ($ipsec_array as $index => $tunnel) {
else { else {
$value = '0'; $value = '0';
} }
$fields[$oid] = $value;
$rrdupdate .= ":$value";
} }
if (isset($tunnel['cikeTunRemoteValue'])) { if (isset($tunnel['cikeTunRemoteValue'])) {
if (!file_exists($rrd_file)) { if (!file_exists($rrd_file)) {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $fields);
rrdtool_update($rrd_file, $rrdupdate);
// $graphs['ipsec_tunnels'] = TRUE; // $graphs['ipsec_tunnels'] = TRUE;
} }
}//end foreach }//end foreach
unset($rrd_file,$rrd_create,$rrdupdate,$oids, $data, $data_array, $oid, $tunnel); unset($rrd_file,$rrd_create,$fields,$oids, $data, $data_array, $oid, $tunnel);

View File

@@ -39,7 +39,7 @@ foreach ($rserver_array as $index => $serverfarm) {
$rrd_create .= " DS:$oid_ds:GAUGE:600:-1:100000000"; $rrd_create .= " DS:$oid_ds:GAUGE:600:-1:100000000";
} }
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($serverfarm[$oid])) { if (is_numeric($serverfarm[$oid])) {
@@ -48,8 +48,7 @@ foreach ($rserver_array as $index => $serverfarm) {
else { else {
$value = '0'; $value = '0';
} }
$fields[$oid] = $value;
$rrdupdate .= ":$value";
} }
$rrd_create .= ' '.$config['rrd_rra']; $rrd_create .= ' '.$config['rrd_rra'];
@@ -58,8 +57,7 @@ foreach ($rserver_array as $index => $serverfarm) {
if (!file_exists($rrd_file)) { if (!file_exists($rrd_file)) {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $fields);
rrdtool_update($rrd_file, $rrdupdate);
} }
}//end foreach }//end foreach

View File

@@ -45,7 +45,7 @@ foreach ($serverfarm_array as $index => $vserver) {
$rrd_create .= " DS:$oid_ds:COUNTER:600:U:1000000000"; $rrd_create .= " DS:$oid_ds:COUNTER:600:U:1000000000";
} }
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($vserver[$oid])) { if (is_numeric($vserver[$oid])) {
@@ -54,16 +54,14 @@ foreach ($serverfarm_array as $index => $vserver) {
else { else {
$value = '0'; $value = '0';
} }
$fields[$oid] = $value;
$rrdupdate .= ":$value";
} }
if (isset($classmaps[$classmap])) { if (isset($classmaps[$classmap])) {
if (!file_exists($rrd_file)) { if (!file_exists($rrd_file)) {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $fields);
rrdtool_update($rrd_file, $rrdupdate);
} }
}//end foreach }//end foreach

View File

@@ -39,13 +39,14 @@ if ($device['os_group'] == 'cisco' && $device['os'] == 'asa' && $device['type']
rrdtool_create($rrd_filename, $rrd_create); rrdtool_create($rrd_filename, $rrd_create);
} }
$rrd_update = 'N'; $fields = array(
$rrd_update .= ':'.$data['currentInUse']['data']; 'connections' => $data['currentInUse']['data'],
);
rrdtool_update($rrd_filename, $rrd_update); rrdtool_update($rrd_filename, $fields);
$graphs['asa_conns'] = true; $graphs['asa_conns'] = true;
echo ' ASA Connections'; echo ' ASA Connections';
} }
unset($data,$rrd_filename,$rrd_create,$rrd_update); unset($data,$rrd_filename,$rrd_create);
}//end if }//end if

View File

@@ -86,7 +86,13 @@ if ($device['os_group'] == 'cisco') {
dbUpdate($cef_stat['update'], 'cef_switching', '`device_id` = ? AND `entPhysicalIndex` = ? AND `afi` = ? AND `cef_index` = ?', array($device['device_id'], $entity, $afi, $path)); dbUpdate($cef_stat['update'], 'cef_switching', '`device_id` = ? AND `entPhysicalIndex` = ? AND `afi` = ? AND `cef_index` = ?', array($device['device_id'], $entity, $afi, $path));
$ret = rrdtool_update("$filename", array($cef_stat['cefSwitchingDrop'], $cef_stat['cefSwitchingPunt'], $cef_stat['cefSwitchingPunt2Host'])); $fields = array(
'drop' => $cef_stat['cefSwitchingDrop'],
'punt' => $cef_stat['cefSwitchingPunt'],
'hostpunt' => $cef_stat['cefSwitchingPunt2Host'],
);
$ret = rrdtool_update("$filename", $fields);
echo "\n"; echo "\n";
}//end foreach }//end foreach

View File

@@ -81,30 +81,30 @@ if ($device['os_group'] == 'cisco') {
rrdtool_create($rrd_filename, $rrd_create); rrdtool_create($rrd_filename, $rrd_create);
} }
$rrd_update = array(); $fields = array(
$rrd_update[] = $data['cipSecGlobalActiveTunnels']; 'Tunnels' => $data['cipSecGlobalActiveTunnels'],
$rrd_update[] = $data['cipSecGlobalInOctets']; 'InOctets' => $data['cipSecGlobalInOctets'],
$rrd_update[] = $data['cipSecGlobalOutOctets']; 'OutOctets' => $data['cipSecGlobalOutOctets'],
$rrd_update[] = $data['cipSecGlobalInDecompOctets']; 'InDecompOctets' => $data['cipSecGlobalInDecompOctets'],
$rrd_update[] = $data['cipSecGlobalOutUncompOctets']; 'OutUncompOctets' => $data['cipSecGlobalOutUncompOctets'],
$rrd_update[] = $data['cipSecGlobalInPkts']; 'InPkts' => $data['cipSecGlobalInPkts'],
$rrd_update[] = $data['cipSecGlobalOutPkts']; 'OutPkts' => $data['cipSecGlobalOutPkts'],
$rrd_update[] = $data['cipSecGlobalInDrops']; 'InDrops' => $data['cipSecGlobalInDrops'],
$rrd_update[] = $data['cipSecGlobalInReplayDrops']; 'InReplayDrops' => $data['cipSecGlobalInReplayDrops'],
$rrd_update[] = $data['cipSecGlobalOutDrops']; 'OutDrops' => $data['cipSecGlobalOutDrops'],
$rrd_update[] = $data['cipSecGlobalInAuths']; 'InAuths' => $data['cipSecGlobalInAuths'],
$rrd_update[] = $data['cipSecGlobalOutAuths']; 'OutAuths' => $data['cipSecGlobalOutAuths'],
$rrd_update[] = $data['cipSecGlobalInAuthFails']; 'InAuthFails' => $data['cipSecGlobalInAuthFails'],
$rrd_update[] = $data['cipSecGlobalOutAuthFails']; 'OutAuthFails' => $data['cipSecGlobalOutAuthFails'],
$rrd_update[] = $data['cipSecGlobalInDecrypts']; 'InDencrypts' => $data['cipSecGlobalInDecrypts'],
$rrd_update[] = $data['cipSecGlobalOutEncrypts']; 'OutEncrypts' => $data['cipSecGlobalOutEncrypts'],
$rrd_update[] = $data['cipSecGlobalInDecryptFails']; 'InDecryptFails' => $data['cipSecGlobalInDecryptFails'],
$rrd_update[] = $data['cipSecGlobalOutEncryptFails']; 'OutEncryptFails' => $data['cipSecGlobalOutEncryptFails'],
$rrd_update[] = $data['cipSecGlobalProtocolUseFails']; 'ProtocolUseFails' => $data['cipSecGlobalProtocolUseFails'],
$rrd_update[] = $data['cipSecGlobalNoSaFails']; 'NoSaFails' => $data['cipSecGlobalNoSaFails'],
$rrd_update[] = $data['cipSecGlobalSysCapFails']; 'SysCapFails' => $data['cipSecGlobalSysCapFails'],
);
rrdtool_update($rrd_filename, $rrd_update); rrdtool_update($rrd_filename, $fields);
$graphs['cipsec_flow_tunnels'] = true; $graphs['cipsec_flow_tunnels'] = true;
$graphs['cipsec_flow_pkts'] = true; $graphs['cipsec_flow_pkts'] = true;

View File

@@ -77,13 +77,13 @@ if ($device['os_group'] == 'cisco') {
} }
// FIXME - use memcached to make sure these values don't go backwards? // FIXME - use memcached to make sure these values don't go backwards?
$rrdupdate = array( $fields = array(
$b_in, 'IN' => $b_in,
$b_out, 'OUT' => $b_out,
$p_in, 'PIN' => $p_in,
$p_out, 'POUT' => $p_out,
); );
rrdtool_update($rrdfile, $rrdupdate); rrdtool_update($rrdfile, $fields);
if ($acc['update']) { if ($acc['update']) {
// Do Updates // Do Updates

View File

@@ -50,19 +50,20 @@ if ($device['os_group'] == 'cisco') {
rrdtool_create($rrd_filename, $rrd_create); rrdtool_create($rrd_filename, $rrd_create);
} }
$rrd_update = 'N'; $fields = array(
$rrd_update .= ':'.$data['crasEmailNumSessions']; 'email' => $data['crasEmailNumSessions'],
$rrd_update .= ':'.$data['crasIPSecNumSessions']; 'ipsec' => $data['crasIPSecNumSessions'],
$rrd_update .= ':'.$data['crasL2LNumSessions']; 'l2l' => $data['crasL2LNumSessions'],
$rrd_update .= ':'.$data['crasLBNumSessions']; 'lb' => $data['crasLBNumSessions'],
$rrd_update .= ':'.$data['crasSVCNumSessions']; 'svc' => $data['crasSVCNumSessions'],
$rrd_update .= ':'.$data['crasWebvpnNumSessions']; 'webvpn' => $data['crasWebvpnNumSessions'],
);
rrdtool_update($rrd_filename, $rrd_update); rrdtool_update($rrd_filename, $fields);
$graphs['cras_sessions'] = true; $graphs['cras_sessions'] = true;
echo ' CRAS Sessions'; echo ' CRAS Sessions';
} }
unset($data, $$rrd_filename, $rrd_create, $rrd_update); unset($data, $$rrd_filename, $rrd_create, $fields);
}//end if }//end if

View File

@@ -50,15 +50,17 @@ foreach (dbFetchRows('SELECT * FROM `slas` WHERE `device_id` = ? AND `deleted` =
if (isset($sla_table[$sla['sla_nr']])) { if (isset($sla_table[$sla['sla_nr']])) {
$slaval = $sla_table[$sla['sla_nr']]; $slaval = $sla_table[$sla['sla_nr']];
echo $slaval['CompletionTime'].'ms at '.$slaval['TimeStr']; echo $slaval['CompletionTime'].'ms at '.$slaval['TimeStr'];
$ts = $slaval['UnixTime'];
$val = $slaval['CompletionTime']; $val = $slaval['CompletionTime'];
} }
else { else {
echo 'NaN'; echo 'NaN';
$ts = 'N';
$val = 'U'; $val = 'U';
} }
rrdtool_update($slarrd, $ts.':'.$val); $fields = array(
'rtt' => $val,
);
rrdtool_update($slarrd, $fields);
echo "\n"; echo "\n";
}//end foreach }//end foreach

View File

@@ -29,7 +29,13 @@ if ($device['os_group'] == "cisco") {
if (!file_exists ($rrd_filename)) { if (!file_exists ($rrd_filename)) {
rrdtool_create ($rrd_filename, " DS:total:GAUGE:600:0:U DS:active:GAUGE:600:0:U" . $config['rrd_rra']); rrdtool_create ($rrd_filename, " DS:total:GAUGE:600:0:U DS:active:GAUGE:600:0:U" . $config['rrd_rra']);
} }
rrdtool_update ($rrd_filename, "N:" . $total . ":" . $active);
$fields = array(
'total' => $total,
'active' => $active,
);
rrdtool_update ($rrd_filename, $fields);
$graphs['cisco-iosdsp'] = TRUE; $graphs['cisco-iosdsp'] = TRUE;
echo (" Cisco IOS DSP "); echo (" Cisco IOS DSP ");

View File

@@ -28,7 +28,13 @@ if ($device['os_group'] == "cisco") {
if (!file_exists ($rrd_filename)) { if (!file_exists ($rrd_filename)) {
rrdtool_create ($rrd_filename, " DS:total:GAUGE:600:0:U DS:active:GAUGE:600:0:U" . $config['rrd_rra']); rrdtool_create ($rrd_filename, " DS:total:GAUGE:600:0:U DS:active:GAUGE:600:0:U" . $config['rrd_rra']);
} }
rrdtool_update ($rrd_filename, "N:" . $total . ":" . $active);
$fields = array(
'total' => $total,
'active' => $active,
);
rrdtool_update ($rrd_filename, $fields);
$graphs['cisco-iosmtp'] = TRUE; $graphs['cisco-iosmtp'] = TRUE;
echo (" Cisco IOS MTP "); echo (" Cisco IOS MTP ");

View File

@@ -33,7 +33,13 @@ if ($device['os_group'] == "cisco") {
if (!file_exists ($rrd_filename)) { if (!file_exists ($rrd_filename)) {
rrdtool_create ($rrd_filename, " DS:total:GAUGE:600:0:U DS:active:GAUGE:600:0:U" . $config['rrd_rra']); rrdtool_create ($rrd_filename, " DS:total:GAUGE:600:0:U DS:active:GAUGE:600:0:U" . $config['rrd_rra']);
} }
rrdtool_update ($rrd_filename, "N:" . $total . ":" . $active);
$fields = array(
'total' => $total,
'active' => $active,
);
rrdtool_update ($rrd_filename, $fields);
$graphs['cisco-iospri'] = TRUE; $graphs['cisco-iospri'] = TRUE;
echo (" Cisco IOS PRI "); echo (" Cisco IOS PRI ");

View File

@@ -28,7 +28,13 @@ if ($device['os_group'] == "cisco") {
if (!file_exists ($rrd_filename)) { if (!file_exists ($rrd_filename)) {
rrdtool_create ($rrd_filename, " DS:total:GAUGE:600:0:U DS:active:GAUGE:600:0:U" . $config['rrd_rra']); rrdtool_create ($rrd_filename, " DS:total:GAUGE:600:0:U DS:active:GAUGE:600:0:U" . $config['rrd_rra']);
} }
rrdtool_update ($rrd_filename, "N:" . $total . ":" . $active);
$fields = array(
'total' => $total,
'active' => $active,
);
rrdtool_update ($rrd_filename, $fields);
$graphs['cisco-iosxcode'] = TRUE; $graphs['cisco-iosxcode'] = TRUE;
echo (" Cisco IOS Transcoder "); echo (" Cisco IOS Transcoder ");

View File

@@ -18,7 +18,13 @@ if ($device['os_group'] == 'cisco') {
rrdtool_create($rrd_filename, ' DS:tunnels:GAUGE:600:0:U DS:sessions:GAUGE:600:0:U DS:denied:COUNTER:600:0:100000'.$config['rrd_rra']); rrdtool_create($rrd_filename, ' DS:tunnels:GAUGE:600:0:U DS:sessions:GAUGE:600:0:U DS:denied:COUNTER:600:0:100000'.$config['rrd_rra']);
} }
rrdtool_update($rrd_filename, array($vpdn['cvpdnSystemTunnelTotal'], $vpdn['cvpdnSystemSessionTotal'], $vpdn['cvpdnSystemDeniedUsersTotal'])); $fields = array(
'tunnels' => $vpdn['cvpdnSystemTunnelTotal'],
'sessions' => $vpdn['cvpdnSystemSessionTotal'],
'denied' => $vpdn['cvpdnSystemDeniedUsersTotal'],
);
rrdtool_update($rrd_filename, $fields);
$graphs['vpdn_sessions_'.$type] = true; $graphs['vpdn_sessions_'.$type] = true;
$graphs['vpdn_tunnels_'.$type] = true; $graphs['vpdn_tunnels_'.$type] = true;

View File

@@ -24,11 +24,13 @@ if ($device['os'] == 'ios') {
$entPhysical_state[$index][$subindex][$group][$key] = $value; $entPhysical_state[$index][$subindex][$group][$key] = $value;
} }
$chan_update = $entry['cc6kxbarStatisticsInUtil']; $fields = array(
$chan_update .= ':'.$entry['cc6kxbarStatisticsOutUtil']; 'inutil' => $entry['cc6kxbarStatisticsInUtil'],
$chan_update .= ':'.$entry['cc6kxbarStatisticsOutDropped']; 'oututil' => $entry['cc6kxbarStatisticsOutUtil'],
$chan_update .= ':'.$entry['cc6kxbarStatisticsOutErrors']; 'outdropped' => $entry['cc6kxbarStatisticsOutDropped'],
$chan_update .= ':'.$entry['cc6kxbarStatisticsInErrors']; 'outerrors' => $entry['cc6kxbarStatisticsOutErrors'],
'inerrors' => $entry['cc6kxbarStatisticsInErrors'],
);
$rrd = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('c6kxbar-'.$index.'-'.$subindex.'.rrd'); $rrd = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('c6kxbar-'.$index.'-'.$subindex.'.rrd');
@@ -48,7 +50,8 @@ if ($device['os'] == 'ios') {
); );
} }
rrdtool_update($rrd, "N:$chan_update"); rrdtool_update($rrd, $fields);
}//end foreach }//end foreach
// print_r($entPhysical_state); // print_r($entPhysical_state);

View File

@@ -105,7 +105,11 @@ function poll_sensor($device, $class, $unit) {
echo "$sensor_value $unit\n"; echo "$sensor_value $unit\n";
rrdtool_update($rrd_file, "N:$sensor_value"); $fields = array(
'sensor' => $sensor_value,
);
rrdtool_update($rrd_file, $fields);
// FIXME also warn when crossing WARN level!! // FIXME also warn when crossing WARN level!!
if ($sensor['sensor_limit_low'] != '' && $sensor['sensor_current'] > $sensor['sensor_limit_low'] && $sensor_value <= $sensor['sensor_limit_low'] && $sensor['sensor_alert'] == 1) { if ($sensor['sensor_limit_low'] != '' && $sensor['sensor_current'] > $sensor['sensor_limit_low'] && $sensor_value <= $sensor['sensor_limit_low'] && $sensor['sensor_alert'] == 1) {
@@ -259,7 +263,10 @@ function poll_device($device, $options) {
} }
if (!empty($device_time)) { if (!empty($device_time)) {
rrdtool_update($poller_rrd, "N:$device_time"); $fields = array(
'poller' => $device_time,
);
rrdtool_update($poller_rrd, $fields);
} }
// Ping response rrd // Ping response rrd
@@ -269,7 +276,11 @@ function poll_device($device, $options) {
} }
if (!empty($ping_time)) { if (!empty($ping_time)) {
rrdtool_update($ping_rrd, "N:$ping_time"); $fields = array(
'ping' => $ping_time,
);
rrdtool_update($ping_rrd, $fields);
} }
$update_array['last_polled'] = array('NOW()'); $update_array['last_polled'] = array('NOW()');
@@ -316,6 +327,7 @@ function poll_mib_def($device, $mib_name_table, $mib_subdir, $mib_oids, $mib_gra
$rrdcreate = '--step 300 '; $rrdcreate = '--step 300 ';
$oidglist = array(); $oidglist = array();
$oidnamelist = array();
foreach ($mib_oids as $oid => $param) { foreach ($mib_oids as $oid => $param) {
$oidindex = $param[0]; $oidindex = $param[0];
$oiddsname = $param[1]; $oiddsname = $param[1];
@@ -342,6 +354,7 @@ function poll_mib_def($device, $mib_name_table, $mib_subdir, $mib_oids, $mib_gra
// Add to oid GET list // Add to oid GET list
$oidglist[] = $fulloid; $oidglist[] = $fulloid;
$oidnamelist[] = $oiddsname;
}//end foreach }//end foreach
// Implde for LibreNMS Version // Implde for LibreNMS Version
@@ -353,15 +366,16 @@ function poll_mib_def($device, $mib_name_table, $mib_subdir, $mib_oids, $mib_gra
return false; return false;
} }
$rrdupdate = 'N'; $oid_count = 0;
foreach ($oidglist as $fulloid) { foreach ($oidglist as $fulloid) {
list($splitoid, $splitindex) = explode('.', $fulloid, 2); list($splitoid, $splitindex) = explode('.', $fulloid, 2);
if (is_numeric($snmpdata[$splitindex][$splitoid])) { if (is_numeric($snmpdata[$splitindex][$splitoid])) {
$rrdupdate .= ':'.$snmpdata[$splitindex][$splitoid]; $fields[$oidnamelist[$oid_count]] = $snmpdata[$splitindex][$splitoid];
} }
else { else {
$rrdupdate .= ':U'; $fields[$oidnamelist[$oid_count]] = 'U';
} }
$oid_count++;
} }
$rrdfilename = $config['rrd_dir'].'/'.$device['hostname'].'/'.$rrd_file; $rrdfilename = $config['rrd_dir'].'/'.$device['hostname'].'/'.$rrd_file;
@@ -370,7 +384,7 @@ function poll_mib_def($device, $mib_name_table, $mib_subdir, $mib_oids, $mib_gra
rrdtool_create($rrdfilename, $rrdcreate.' '.$config['rrd_rra']); rrdtool_create($rrdfilename, $rrdcreate.' '.$config['rrd_rra']);
} }
rrdtool_update($rrdfilename, $rrdupdate); rrdtool_update($rrdfilename, $fields);
foreach ($mib_graphs as $graphtoenable) { foreach ($mib_graphs as $graphtoenable) {
$graphs[$graphtoenable] = true; $graphs[$graphtoenable] = true;

View File

@@ -17,7 +17,11 @@ if (is_numeric($hrSystem[0]['hrSystemProcesses'])) {
); );
} }
rrdtool_update($rrd_file, 'N:'.$hrSystem[0]['hrSystemProcesses']); $fields = array(
'procs' => $hrSystem[0]['hrSystemProcesses'],
);
rrdtool_update($rrd_file, $fields);
$graphs['hr_processes'] = true; $graphs['hr_processes'] = true;
echo ' Processes'; echo ' Processes';
} }
@@ -32,7 +36,11 @@ if (is_numeric($hrSystem[0]['hrSystemNumUsers'])) {
); );
} }
rrdtool_update($rrd_file, 'N:'.$hrSystem[0]['hrSystemNumUsers']); $fields = array(
'users' => $hrSystem[0]['hrSystemNumUsers'],
);
rrdtool_update($rrd_file, $fields);
$graphs['hr_users'] = true; $graphs['hr_users'] = true;
echo ' Users'; echo ' Users';
} }

View File

@@ -94,12 +94,12 @@ if ($ipSystemStats) {
$stats['ipSystemStatsOutForwDatagrams'] = $stats['ipSystemStatsHCOutForwDatagrams']; $stats['ipSystemStatsOutForwDatagrams'] = $stats['ipSystemStatsHCOutForwDatagrams'];
} }
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $files, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrdfile = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('ipSystemStats-'.$af.'.rrd'); $rrdfile = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('ipSystemStats-'.$af.'.rrd');
$rrd_create = $config['rrd_rra']; $rrd_create = $config['rrd_rra'];
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
$oid_ds = str_replace('ipSystemStats', '', $oid); $oid_ds = str_replace('ipSystemStats', '', $oid);
@@ -108,17 +108,16 @@ if ($ipSystemStats) {
if (strstr($stats[$oid], 'No') || strstr($stats[$oid], 'd') || strstr($stats[$oid], 's')) { if (strstr($stats[$oid], 'No') || strstr($stats[$oid], 'd') || strstr($stats[$oid], 's')) {
$stats[$oid] = '0'; $stats[$oid] = '0';
} }
$fields[$oid] = $stats[$oid];
$rrdupdate .= ':'.$stats[$oid];
} }
if (!file_exists($rrdfile)) { if (!file_exists($rrdfile)) {
rrdtool_create($rrdfile, $rrd_create); rrdtool_create($rrdfile, $rrd_create);
} }
rrdtool_update($rrdfile, $rrdupdate); rrdtool_update($rrdfile, $fields);
unset($rrdupdate, $rrd_create); unset($fields, $rrd_create);
// FIXME per-AF? // FIXME per-AF?
$graphs['ipsystemstats_'.$af] = true; $graphs['ipsystemstats_'.$af] = true;

View File

@@ -43,7 +43,11 @@ if ($ipmi['host'] = get_dev_attrib($device, 'ipmi_hostname')) {
echo $sensor." $unit\n"; echo $sensor." $unit\n";
rrdtool_update($rrd_file, "N:$sensor"); $fields = array(
'sensor' => $sensor,
);
rrdtool_update($rrd_file, $fields);
// FIXME warnings in event & mail not done here yet! // FIXME warnings in event & mail not done here yet!
dbUpdate(array('sensor_current' => $sensor), 'sensors', 'poller_type = ? AND sensor_class = ? AND sensor_id = ?', array('ipmi', $ipmisensors['sensor_class'], $ipmisensors['sensor_id'])); dbUpdate(array('sensor_current' => $sensor), 'sensors', 'poller_type = ? AND sensor_class = ? AND sensor_id = ?', array('ipmi', $ipmisensors['sensor_class'], $ipmisensors['sensor_id']));

View File

@@ -53,7 +53,19 @@ if (count($vp_rows)) {
); );
} }
rrdtool_update($rrd, "N:$vp_update"); $fields = array(
'incells' => $t_vp['juniAtmVpStatsInCells'],
'outcells' => $t_vp['juniAtmVpStatsOutCells'],
'inpackets' => $t_vp['juniAtmVpStatsInPackets'],
'outpackets' => $t_vp['juniAtmVpStatsOutPackets'],
'inpacketoctets' => $t_vp['juniAtmVpStatsInPacketOctets'],
'outpacketoctets' => $t_vp['juniAtmVpStatsOutPacketOctets'],
'inpacketerrors' => $t_vp['juniAtmVpStatsInPacketErrors'],
'outpacketerrors' => $t_vp['juniAtmVpStatsOutPacketErrors'],
);
rrdtool_update($rrd, $fields);
}//end foreach }//end foreach
echo "\n"; echo "\n";

View File

@@ -26,7 +26,11 @@ foreach (dbFetchRows('SELECT * FROM mempools WHERE device_id = ?', array($device
rrdtool_create($mempool_rrd, '--step 300 DS:used:GAUGE:600:0:U DS:free:GAUGE:600:0:U '.$config['rrd_rra']); rrdtool_create($mempool_rrd, '--step 300 DS:used:GAUGE:600:0:U DS:free:GAUGE:600:0:U '.$config['rrd_rra']);
} }
rrdtool_update($mempool_rrd, 'N:'.$mempool['used'].':'.$mempool['free']); $fields = array(
'used' => $mempool['used'],
'free' => $mempool['free'],
);
rrdtool_update($mempool_rrd, $fields);
$mempool['state'] = array( $mempool['state'] = array(
'mempool_used' => $mempool['used'], 'mempool_used' => $mempool['used'],

View File

@@ -95,7 +95,7 @@ if ($device['os'] == 'netscaler') {
$oids = array_merge($oids_gauge, $oids_counter); $oids = array_merge($oids_gauge, $oids_counter);
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $fields, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netscaler-stats-tcp.rrd'; $rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netscaler-stats-tcp.rrd';
$rrd_create = $config['rrd_rra']; $rrd_create = $config['rrd_rra'];
@@ -112,22 +112,23 @@ if ($device['os'] == 'netscaler') {
$data = snmpwalk_cache_oid($device, 'nsTcpStatsGroup', array(), 'NS-ROOT-MIB'); $data = snmpwalk_cache_oid($device, 'nsTcpStatsGroup', array(), 'NS-ROOT-MIB');
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($data[0][$oid])) { if (is_numeric($data[0][$oid])) {
$rrdupdate .= ':'.$data[0][$oid]; $rrdupdate = ':'.$data[0][$oid];
} }
else { else {
$rrdupdate .= ':U'; $rrdupdate = 'U';
} }
$fields[$oid] = $rrdupdate;
} }
if (!file_exists($rrd_file)) { if (!file_exists($rrd_file)) {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $rrdupdate); rrdtool_update($rrd_file, $fields);
$graphs['netscaler_tcp_conn'] = true; $graphs['netscaler_tcp_conn'] = true;
$graphs['netscaler_tcp_bits'] = true; $graphs['netscaler_tcp_bits'] = true;
$graphs['netscaler_tcp_pkts'] = true; $graphs['netscaler_tcp_pkts'] = true;

View File

@@ -55,7 +55,7 @@ if ($device['os'] == 'netscaler') {
$oids = array_merge($oids_gauge, $oids_counter); $oids = array_merge($oids_gauge, $oids_counter);
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $fields, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrd_create = $config['rrd_rra']; $rrd_create = $config['rrd_rra'];
@@ -85,14 +85,14 @@ if ($device['os'] == 'netscaler') {
if (isset($vsvr['vsvrName'])) { if (isset($vsvr['vsvrName'])) {
$vsvr_exist[$vsvr['vsvrName']] = 1; $vsvr_exist[$vsvr['vsvrName']] = 1;
$rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netscaler-vsvr-'.safename($vsvr['vsvrName']).'.rrd'; $rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netscaler-vsvr-'.safename($vsvr['vsvrName']).'.rrd';
$rrdupdate = 'N';
$fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($vsvr[$oid])) { if (is_numeric($vsvr[$oid])) {
$rrdupdate .= ':'.$vsvr[$oid]; $fields[$oid] = $vsvr[$oid];
} }
else { else {
$rrdupdate .= ':U'; $fields[$oid] = 'U';
} }
} }
@@ -123,7 +123,7 @@ if ($device['os'] == 'netscaler') {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $rrdupdate); rrdtool_update($rrd_file, $fields);
echo "\n"; echo "\n";
}//end if }//end if

View File

@@ -33,7 +33,7 @@ if ($device['os'] != 'Snom') {
'icmpOutAddrMaskReps', 'icmpOutAddrMaskReps',
); );
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $fields, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-icmp.rrd'; $rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-icmp.rrd';
$rrd_create = $config['rrd_rra']; $rrd_create = $config['rrd_rra'];
@@ -46,7 +46,7 @@ if ($device['os'] != 'Snom') {
$data_array = snmpwalk_cache_oid($device, 'icmp', array(), 'IP-MIB'); $data_array = snmpwalk_cache_oid($device, 'icmp', array(), 'IP-MIB');
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($data_array[0][$oid])) { if (is_numeric($data_array[0][$oid])) {
@@ -55,8 +55,7 @@ if ($device['os'] != 'Snom') {
else { else {
$value = 'U'; $value = 'U';
} }
$fields[$oid] = $value;
$rrdupdate .= ":$value";
} }
unset($snmpstring); unset($snmpstring);
@@ -66,7 +65,7 @@ if ($device['os'] != 'Snom') {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $rrdupdate); rrdtool_update($rrd_file, $fields);
$graphs['netstat_icmp'] = true; $graphs['netstat_icmp'] = true;
$graphs['netstat_icmp_info'] = true; $graphs['netstat_icmp_info'] = true;
} }

View File

@@ -23,7 +23,7 @@ if ($device['os'] != 'Snom') {
'ipInAddrErrors', 'ipInAddrErrors',
); );
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $fields, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-ip.rrd'; $rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-ip.rrd';
$rrd_create = $config['rrd_rra']; $rrd_create = $config['rrd_rra'];
@@ -36,7 +36,7 @@ if ($device['os'] != 'Snom') {
$data = snmp_get_multi($device, $snmpstring, '-OQUs', 'IP-MIB'); $data = snmp_get_multi($device, $snmpstring, '-OQUs', 'IP-MIB');
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($data[0][$oid])) { if (is_numeric($data[0][$oid])) {
@@ -45,8 +45,7 @@ if ($device['os'] != 'Snom') {
else { else {
$value = 'U'; $value = 'U';
} }
$fields[$oid] = $value;
$rrdupdate .= ":$value";
} }
if (isset($data[0]['ipOutRequests']) && isset($data[0]['ipInReceives'])) { if (isset($data[0]['ipOutRequests']) && isset($data[0]['ipInReceives'])) {
@@ -54,7 +53,7 @@ if ($device['os'] != 'Snom') {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $rrdupdate); rrdtool_update($rrd_file, $fields);
$graphs['netstat_ip'] = true; $graphs['netstat_ip'] = true;
$graphs['netstat_ip_frag'] = true; $graphs['netstat_ip_frag'] = true;
} }

View File

@@ -6,7 +6,7 @@ if ($device['os'] != 'Snom') {
// Below have more oids, and are in trees by themselves, so we can snmpwalk_cache_oid them // Below have more oids, and are in trees by themselves, so we can snmpwalk_cache_oid them
$oids = array('ipCidrRouteNumber'); $oids = array('ipCidrRouteNumber');
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $fields, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-ip_forward.rrd'; $rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-ip_forward.rrd';
$rrd_create = $config['rrd_rra']; $rrd_create = $config['rrd_rra'];
@@ -20,7 +20,7 @@ if ($device['os'] != 'Snom') {
$data = snmp_get_multi($device, $snmpstring, '-OQUs', 'IP-FORWARD-MIB'); $data = snmp_get_multi($device, $snmpstring, '-OQUs', 'IP-FORWARD-MIB');
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($data[0][$oid])) { if (is_numeric($data[0][$oid])) {
@@ -29,8 +29,7 @@ if ($device['os'] != 'Snom') {
else { else {
$value = 'U'; $value = 'U';
} }
$fields[$oid] = $value;
$rrdupdate .= ":$value";
} }
if (isset($data[0]['ipCidrRouteNumber'])) { if (isset($data[0]['ipCidrRouteNumber'])) {
@@ -38,7 +37,7 @@ if ($device['os'] != 'Snom') {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $rrdupdate); rrdtool_update($rrd_file, $fields);
$graphs['netstat_ip_forward'] = true; $graphs['netstat_ip_forward'] = true;
} }
} }

View File

@@ -36,7 +36,7 @@ if ($device['os'] != 'Snom') {
'snmpProxyDrops', 'snmpProxyDrops',
); );
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $fields, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('netstats-snmp.rrd'); $rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('netstats-snmp.rrd');
$rrd_create = $config['rrd_rra']; $rrd_create = $config['rrd_rra'];
@@ -48,7 +48,7 @@ if ($device['os'] != 'Snom') {
$data_array = snmpwalk_cache_oid($device, 'snmp', array(), 'SNMPv2-MIB'); $data_array = snmpwalk_cache_oid($device, 'snmp', array(), 'SNMPv2-MIB');
$rrdupdate = array(); $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($data_array[0][$oid])) { if (is_numeric($data_array[0][$oid])) {
$value = $data_array[0][$oid]; $value = $data_array[0][$oid];
@@ -56,8 +56,7 @@ if ($device['os'] != 'Snom') {
else { else {
$value = 'U'; $value = 'U';
} }
$fields[$oid] = $value;
$rrdupdate[] = $value;
} }
if (isset($data_array[0]['snmpInPkts']) && isset($data_array[0]['snmpOutPkts'])) { if (isset($data_array[0]['snmpInPkts']) && isset($data_array[0]['snmpOutPkts'])) {
@@ -65,7 +64,7 @@ if ($device['os'] != 'Snom') {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $rrdupdate); rrdtool_update($rrd_file, $fields);
$graphs['netstat_snmp'] = true; $graphs['netstat_snmp'] = true;
$graphs['netstat_snmp_pkt'] = true; $graphs['netstat_snmp_pkt'] = true;
} }

View File

@@ -19,7 +19,7 @@ if ($device['os'] != 'Snom') {
// $oids['tcp_collect'] = $oids['tcp']; // $oids['tcp_collect'] = $oids['tcp'];
// $oids['tcp_collect'][] = 'tcpHCInSegs'; // $oids['tcp_collect'][] = 'tcpHCInSegs';
// $oids['tcp_collect'][] = 'tcpHCOutSegs'; // $oids['tcp_collect'][] = 'tcpHCOutSegs';
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $fields, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-tcp.rrd'; $rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-tcp.rrd';
$rrd_create = $config['rrd_rra']; $rrd_create = $config['rrd_rra'];
@@ -36,7 +36,7 @@ if ($device['os'] != 'Snom') {
$data = snmp_get_multi($device, $snmpstring, '-OQUs', 'TCP-MIB'); $data = snmp_get_multi($device, $snmpstring, '-OQUs', 'TCP-MIB');
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($data[0][$oid])) { if (is_numeric($data[0][$oid])) {
@@ -45,8 +45,7 @@ if ($device['os'] != 'Snom') {
else { else {
$value = 'U'; $value = 'U';
} }
$fields[$oid] = $value;
$rrdupdate .= ":$value";
} }
unset($snmpstring); unset($snmpstring);
@@ -56,7 +55,7 @@ if ($device['os'] != 'Snom') {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $rrdupdate); rrdtool_update($rrd_file, $fields);
$graphs['netstat_tcp'] = true; $graphs['netstat_tcp'] = true;
} }

View File

@@ -11,7 +11,7 @@ if ($device['os'] != 'Snom') {
'udpNoPorts', 'udpNoPorts',
); );
unset($snmpstring, $rrdupdate, $snmpdata, $snmpdata_cmd, $rrd_create); unset($snmpstring, $fields, $snmpdata, $snmpdata_cmd, $rrd_create);
$rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-udp.rrd'; $rrd_file = $config['rrd_dir'].'/'.$device['hostname'].'/netstats-udp.rrd';
$rrd_create = $config['rrd_rra']; $rrd_create = $config['rrd_rra'];
@@ -25,7 +25,7 @@ if ($device['os'] != 'Snom') {
$data = snmp_get_multi($device, $snmpstring, '-OQUs', 'UDP-MIB'); $data = snmp_get_multi($device, $snmpstring, '-OQUs', 'UDP-MIB');
$rrdupdate = 'N'; $fields = array();
foreach ($oids as $oid) { foreach ($oids as $oid) {
if (is_numeric($data[0][$oid])) { if (is_numeric($data[0][$oid])) {
@@ -34,8 +34,7 @@ if ($device['os'] != 'Snom') {
else { else {
$value = 'U'; $value = 'U';
} }
$fields[$oid] = $value;
$rrdupdate .= ":$value";
} }
if (isset($data[0]['udpInDatagrams']) && isset($data[0]['udpOutDatagrams'])) { if (isset($data[0]['udpInDatagrams']) && isset($data[0]['udpOutDatagrams'])) {
@@ -43,7 +42,7 @@ if ($device['os'] != 'Snom') {
rrdtool_create($rrd_file, $rrd_create); rrdtool_create($rrd_file, $rrd_create);
} }
rrdtool_update($rrd_file, $rrdupdate); rrdtool_update($rrd_file, $fields);
$graphs['netstat_udp'] = true; $graphs['netstat_udp'] = true;
} }
}//end if }//end if

View File

@@ -23,7 +23,13 @@ if (is_numeric($sessions)) {
} }
print "Sessions: $sessions\n"; print "Sessions: $sessions\n";
rrdtool_update($sessrrd, 'N:'.$sessions);
$fields = array(
'sessions' => $sessions,
);
rrdtool_update($sessrrd, $fields);
$graphs['fortigate_sessions'] = true; $graphs['fortigate_sessions'] = true;
} }
@@ -36,6 +42,12 @@ if (is_numeric($cpu_usage)) {
} }
echo "CPU: $cpu_usage%\n"; echo "CPU: $cpu_usage%\n";
rrdtool_update($cpurrd, " N:$cpu_usage");
$fields = array(
'LOAD' => $cpu_usage,
);
rrdtool_update($cpurrd, $fields);
$graphs['fortigate_cpu'] = true; $graphs['fortigate_cpu'] = true;
} }

View File

@@ -13,6 +13,11 @@ if (is_numeric($sessions)) {
rrdtool_create($sessrrd, ' --step 300 DS:sessions:GAUGE:600:0:3000000 '.$config['rrd_rra']); rrdtool_create($sessrrd, ' --step 300 DS:sessions:GAUGE:600:0:3000000 '.$config['rrd_rra']);
} }
rrdtool_update($sessrrd, "N:$sessions"); $fields = array(
'sessions' => $sessions,
);
rrdtool_update($sessrrd, $fields);
$graphs['panos_sessions'] = true; $graphs['panos_sessions'] = true;
} }

View File

@@ -44,7 +44,11 @@ if (is_numeric($FdbAddressCount)) {
); );
} }
rrdtool_update($fdb_rrd_file, "N:$FdbAddressCount"); $fields = array(
'value' => $FdbAddressCount,
);
rrdtool_update($fdb_rrd_file, $fields);
$graphs['fdb_count'] = true; $graphs['fdb_count'] = true;

View File

@@ -19,6 +19,12 @@ if (!is_file($sessrrd)) {
); );
} }
rrdtool_update("$sessrrd", "N:$sessalloc:$sessmax:$sessfailed"); $fields = array(
'allocate' => $sessalloc,
'max' => $sessmax,
'failed' => $sessfailed,
);
rrdtool_update("$sessrrd", $fields);
$graphs['screenos_sessions'] = true; $graphs['screenos_sessions'] = true;

View File

@@ -36,5 +36,13 @@ if (!is_file($rrdfile)) {
); );
} }
$rrdupdate = "N:$rxbytes:$txbytes:$rxpkts:$rxbytes:$calls:$registrations"; $fields = array(
rrdtool_update("$rrdfile", $rrdupdate); 'INOCTETS' => $rxbytes,
'OUTOCTETS' => $txbytes,
'INPKTS' => $rxpkts,
'OUTPKTS' => $rxbytes,
'CALLS' => $calls,
'REGISTRATIONS' => $registrations,
);
rrdtool_update("$rrdfile", $fields);

View File

@@ -372,8 +372,13 @@ if (!is_file($filename)) {
); );
} }
$rrd_update = 'N:'.$ospf_instance_count.':'.$ospf_area_count.':'.$ospf_port_count.':'.$ospf_neighbour_count; $fields = array(
$ret = rrdtool_update("$filename", $rrd_update); 'instances' => $ospf_instance_count,
'areas' => $ospf_area_count,
'ports' => $ospf_port_count,
'neighbours' => $ospf_neighbour_count,
);
$ret = rrdtool_update("$filename", $fields);
unset($ospf_ports_db); unset($ospf_ports_db);
unset($ospf_ports_poll); unset($ospf_ports_poll);

View File

@@ -151,7 +151,7 @@ if (isset($port_stats[$port['ifIndex']]['adslLineCoding'])) {
$this_port['adslAturCurrSnrMgn'] = 'U'; $this_port['adslAturCurrSnrMgn'] = 'U';
} }
$rrdupdate = 'N'; $fields = array();
foreach ($adsl_oids as $oid) { foreach ($adsl_oids as $oid) {
$oid = 'adsl'.$oid; $oid = 'adsl'.$oid;
$data = str_replace('"', '', $this_port[$oid]); $data = str_replace('"', '', $this_port[$oid]);
@@ -159,15 +159,14 @@ if (isset($port_stats[$port['ifIndex']]['adslLineCoding'])) {
if (!is_numeric($data)) { if (!is_numeric($data)) {
$data = 'U'; $data = 'U';
} }
$fields[$oid] = $data;
$rrdupdate .= ":$data";
} }
if (!is_file($rrdfile)) { if (!is_file($rrdfile)) {
rrdtool_create($rrdfile, $rrd_create); rrdtool_create($rrdfile, $rrd_create);
} }
rrdtool_update($rrdfile, $rrdupdate); rrdtool_update($rrdfile, $fields);
echo 'ADSL ('.$this_port['adslLineCoding'].'/'.formatRates($this_port['adslAtucChanCurrTxRate']).'/'.formatRates($this_port['adslAturChanCurrTxRate']).')'; echo 'ADSL ('.$this_port['adslLineCoding'].'/'.formatRates($this_port['adslAtucChanCurrTxRate']).'/'.formatRates($this_port['adslAturChanCurrTxRate']).')';
}//end if }//end if

View File

@@ -25,13 +25,13 @@ if ($port_stats[$port['ifIndex']] &&
} }
} }
$rrdupdate = 'N'; $fields = array();
foreach ($etherlike_oids as $oid) { foreach ($etherlike_oids as $oid) {
$data = ($this_port[$oid] + 0); $data = ($this_port[$oid] + 0);
$rrdupdate .= ":$data"; $fields[$oid] = $data;
} }
rrdtool_update($rrdfile, $rrdupdate); rrdtool_update($rrdfile, $fields);
echo 'EtherLike '; echo 'EtherLike ';
} }

View File

@@ -59,7 +59,15 @@ if ($port_stats[$port['ifIndex']]
} }
$upd = "$polled:".$port['cpeExtPsePortPwrAllocated'].':'.$port['cpeExtPsePortPwrAvailable'].':'.$port['cpeExtPsePortPwrConsumption'].':'.$port['cpeExtPsePortMaxPwrDrawn']; $upd = "$polled:".$port['cpeExtPsePortPwrAllocated'].':'.$port['cpeExtPsePortPwrAvailable'].':'.$port['cpeExtPsePortPwrConsumption'].':'.$port['cpeExtPsePortMaxPwrDrawn'];
$ret = rrdtool_update("$rrdfile", $upd);
$fields = array(
'PortPwrAllocated' => $port['cpeExtPsePortPwrAllocated'],
'PortPwrAvailable' => $port['cpeExtPsePortPwrAvailable'],
'PortConsumption' => $port['cpeExtPsePortPwrConsumption'],
'PortMaxPwrDrawn' => $port['cpeExtPsePortMaxPwrDrawn'],
);
$ret = rrdtool_update("$rrdfile", $fields);
echo 'PoE '; echo 'PoE ';
}//end if }//end if

View File

@@ -491,25 +491,25 @@ foreach ($ports as $port) {
); );
}//end if }//end if
$this_port['rrd_update'] = array( $fields = array(
$this_port['ifInOctets'], 'INOCTETS' => $this_port['ifInOctets'],
$this_port['ifOutOctets'], 'OUTOCTETS' => $this_port['ifOutOctets'],
$this_port['ifInErrors'], 'INERRORS' => $this_port['ifInErrors'],
$this_port['ifOutErrors'], 'OUTERRORS' => $this_port['ifOutErrors'],
$this_port['ifInUcastPkts'], 'INUCASTPKTS' => $this_port['ifInUcastPkts'],
$this_port['ifOutUcastPkts'], 'OUTUCASTPKTS' => $this_port['ifOutUcastPkts'],
$this_port['ifInNUcastPkts'], 'INNUCASTPKTS' => $this_port['ifInNUcastPkts'],
$this_port['ifOutNUcastPkts'], 'OUTNUCASTPKTS' => $this_port['ifOutNUcastPkts'],
$this_port['ifInDiscards'], 'INDISCARDS' => $this_port['ifInDiscards'],
$this_port['ifOutDiscards'], 'OUTDISCARDS' => $this_port['ifOutDiscards'],
$this_port['ifInUnknownProtos'], 'INUNKNOWNPROTOS' => $this_port['ifInUnknownProtos'],
$this_port['ifInBroadcastPkts'], 'INBROADCASTPKTS' => $this_port['ifInBroadcastPkts'],
$this_port['ifOutBroadcastPkts'], 'OUTBROADCASTPKTS' => $this_port['ifOutBroadcastPkts'],
$this_port['ifInMulticastPkts'], 'INMULTICASTPKTS' => $this_port['ifInMulticastPkts'],
$this_port['ifOutMulticastPkts'], 'OUTMULTICASTPKTS' => $this_port['ifOutMulticastPkts'],
); );
rrdtool_update("$rrdfile", $this_port['rrd_update']); rrdtool_update("$rrdfile", $fields);
// End Update IF-MIB // End Update IF-MIB
// Update PAgP // Update PAgP
if ($this_port['pagpOperationMode'] || $port['pagpOperationMode']) { if ($this_port['pagpOperationMode'] || $port['pagpOperationMode']) {

View File

@@ -31,6 +31,11 @@ foreach (dbFetchRows('SELECT * FROM processors WHERE device_id = ?', array($devi
echo $proc."%\n"; echo $proc."%\n";
rrdtool_update($procrrd, "N:$proc"); $fields = array(
'usage' => $proc,
);
rrdtool_update($procrrd, $fields);
dbUpdate(array('processor_usage' => $proc), 'processors', '`processor_id` = ?', array($processor['processor_id'])); dbUpdate(array('processor_usage' => $proc), 'processors', '`processor_id` = ?', array($processor['processor_id']));
}//end foreach }//end foreach

View File

@@ -32,7 +32,12 @@ foreach (dbFetchRows('SELECT * FROM storage WHERE device_id = ?', array($device[
echo $percent.'% '; echo $percent.'% ';
rrdtool_update($storage_rrd, 'N:'.$storage['used'].':'.$storage['free']); $fields = array(
'used' => $storage['used'],
'free' => $storage['free'],
);
rrdtool_update($storage_rrd, $fields);
if ($config['memcached']['enable'] === true) { if ($config['memcached']['enable'] === true) {
$memcache->set('storage-'.$storage['storage_id'].'-used', $storage['used']); $memcache->set('storage-'.$storage['storage_id'].'-used', $storage['used']);

View File

@@ -74,7 +74,11 @@ if (is_numeric($uptime)) {
rrdtool_create($uptime_rrd, 'DS:uptime:GAUGE:600:0:U '.$config['rrd_rra']); rrdtool_create($uptime_rrd, 'DS:uptime:GAUGE:600:0:U '.$config['rrd_rra']);
} }
rrdtool_update($uptime_rrd, 'N:'.$uptime); $fields = array(
'uptime' => $uptime,
);
rrdtool_update($uptime_rrd, $fields);
$graphs['uptime'] = true; $graphs['uptime'] = true;

View File

@@ -30,7 +30,11 @@ if ($config['enable_printers']) {
echo $tonerperc." %\n"; echo $tonerperc." %\n";
rrdtool_update($tonerrrd, "N:$tonerperc"); $fields = array(
'toner' => $tonerperc,
);
rrdtool_update($tonerrrd, $fields);
// FIXME should report for toner out... :) // FIXME should report for toner out... :)
// Log toner swap // Log toner swap

View File

@@ -36,7 +36,14 @@ if (count($diskio_data)) {
); );
} }
rrdtool_update($rrd, array($entry['diskIONReadX'], $entry['diskIONWrittenX'], $entry['diskIOReads'], $entry['diskIOWrites'])); $fields = array(
'read' => $entry['diskIONReadX'],
'written' => $entry['diskIONWrittenX'],
'reads' => $entry['diskIOReads'],
'writes' => $entry['diskIOWrites'],
);
rrdtool_update($rrd, $fields);
}//end foreach }//end foreach
echo "\n"; echo "\n";

View File

@@ -48,7 +48,14 @@ if (is_numeric($ss['ssCpuRawUser']) && is_numeric($ss['ssCpuRawNice']) && is_num
rrdtool_create($cpu_rrd, $cpu_rrd_create); rrdtool_create($cpu_rrd, $cpu_rrd_create);
} }
rrdtool_update($cpu_rrd, array($ss['ssCpuRawUser'], $ss['ssCpuRawSystem'], $ss['ssCpuRawNice'], $ss['ssCpuRawIdle'])); $fields = array(
'user' => $ss['ssCpuRawUser'],
'system' => $ss['ssCpuRawSystem'],
'nice' => $ss['ssCpuRawNice'],
'idle' => $ss['ssCpuRawIdle'],
);
rrdtool_update($cpu_rrd, $fields);
$graphs['ucd_cpu'] = true; $graphs['ucd_cpu'] = true;
} }
@@ -78,7 +85,11 @@ foreach ($collect_oids as $oid) {
rrdtool_create($filename, ' --step 300 DS:value:COUNTER:600:0:U '.$config['rrd_rra']); rrdtool_create($filename, ' --step 300 DS:value:COUNTER:600:0:U '.$config['rrd_rra']);
} }
rrdtool_update($filename, 'N:'.$value); $fields = array(
'value' => $value,
);
rrdtool_update($filename, $fields);
$graphs['ucd_cpu'] = true; $graphs['ucd_cpu'] = true;
} }
} }
@@ -141,7 +152,19 @@ if (is_numeric($memTotalReal) && is_numeric($memAvailReal) && is_numeric($memTot
rrdtool_create($mem_rrd, $mem_rrd_create); rrdtool_create($mem_rrd, $mem_rrd_create);
} }
rrdtool_update($mem_rrd, array($memTotalSwap, $memAvailSwap, $memTotalReal, $memAvailReal, $memTotalFree, $memShared, $memBuffer, $memCached)); $fields = array(
'totalswap' => $memTotalSwap,
'availswap' => $memAvailSwap,
'totalreal' => $memTotalReal,
'availreal' => $memAvailReal,
'totalfree' => $memTotalFree,
'shared' => $memShared,
'buffered' => $memBuffer,
'cached' => $memCached,
);
rrdtool_update($mem_rrd, $fields);
$graphs['ucd_memory'] = true; $graphs['ucd_memory'] = true;
} }
@@ -158,7 +181,13 @@ if (is_numeric($load_raw[2]['laLoadInt'])) {
rrdtool_create($load_rrd, ' --step 300 DS:1min:GAUGE:600:0:5000 DS:5min:GAUGE:600:0:5000 DS:15min:GAUGE:600:0:5000 '.$config['rrd_rra']); rrdtool_create($load_rrd, ' --step 300 DS:1min:GAUGE:600:0:5000 DS:5min:GAUGE:600:0:5000 DS:15min:GAUGE:600:0:5000 '.$config['rrd_rra']);
} }
rrdtool_update($load_rrd, array($load_raw[1]['laLoadInt'], $load_raw[2]['laLoadInt'], $load_raw[3]['laLoadInt'])); $fields = array(
'1min' => $load_raw[1]['laLoadInt'],
'5min' => $load_raw[2]['laLoadInt'],
'15min' => $load_raw[3]['laLoadInt'],
);
rrdtool_update($load_rrd, $fields);
$graphs['ucd_load'] = 'TRUE'; $graphs['ucd_load'] = 'TRUE';
} }

View File

@@ -40,7 +40,11 @@ if ($device['os_group'] == 'unix') {
rrdtool_create($agent_rrd, 'DS:time:GAUGE:600:0:U '.$config['rrd_rra']); rrdtool_create($agent_rrd, 'DS:time:GAUGE:600:0:U '.$config['rrd_rra']);
} }
rrdtool_update($agent_rrd, 'N:'.$agent_time); $fields = array(
'time' => $agent_time,
);
rrdtool_update($agent_rrd, $fields);
$graphs['agent'] = true; $graphs['agent'] = true;
foreach (explode('<<<', $agent_raw) as $section) { foreach (explode('<<<', $agent_raw) as $section) {

View File

@@ -109,7 +109,11 @@ if (!empty($agent_data['munin'])) {
rrdtool_create($filename, $cmd); rrdtool_create($filename, $cmd);
} }
rrdtool_update($filename, 'N:'.$data['value']); $fields = array(
'val' => $data['value'],
);
rrdtool_update($filename, $fields);
if (empty($ds_list[$ds_uniq])) { if (empty($ds_list[$ds_uniq])) {
$insert = array( $insert = array(

View File

@@ -79,7 +79,11 @@ if ($device['type'] == 'network' || $device['type'] == 'firewall' || $device['ty
); );
} }
rrdtool_update($wificlientsrrd, array($wificlients1)); $fields = array(
'wificlients' => $wificlients1,
);
rrdtool_update($wificlientsrrd, $fields);
$graphs['wifi_clients'] = true; $graphs['wifi_clients'] = true;
} }
@@ -95,7 +99,11 @@ if ($device['type'] == 'network' || $device['type'] == 'firewall' || $device['ty
); );
} }
rrdtool_update($wificlientsrrd, array($wificlients2)); $fields = array(
'wificlients' => $wificlients2,
);
rrdtool_update($wificlientsrrd, $fields);
$graphs['wifi_clients'] = true; $graphs['wifi_clients'] = true;
} }

View File

@@ -240,20 +240,23 @@ function rrdtool_create($filename, $options) {
function rrdtool_update($filename, $options) { function rrdtool_update($filename, $options) {
$values = array(); $values = array();
// Do some sanitisation on the data if passed as an array. // Do some sanitisation on the data if passed as an array.
if (is_array($options)) { if (is_array($options)) {
$values[] = 'N'; $values[] = 'N';
foreach ($options as $value) { foreach ($options as $k => $v) {
if (!is_numeric($value)) { if (!is_numeric($v)) {
$value = U; $v = U;
} }
$values[] = $value; $values[] = $v;
} }
$options = implode(':', $values); $options = implode(':', $values);
}
return rrdtool('update', $filename, $options); return rrdtool('update', $filename, $options);
}
else {
return 'Bad options passed to rrdtool_update';
}
} }

View File

@@ -1088,7 +1088,7 @@ function save_mibs($device, $mibname, $oids, $mibdef, &$graphs) {
$index, $index,
), ),
array('DS:'.$mibdef[$oid]['dsname'].":$type"), array('DS:'.$mibdef[$oid]['dsname'].":$type"),
"N:$val" array($mibdef[$oid]['dsname'] => $val)
); );
} }
} }