merge $popgraph and $popdescr into $config['os'] as overgraph and overtext

merge ifalias/ifdescr/ifname/ifindex decision making about port names into $config['os']


git-svn-id: http://www.observium.org/svn/observer/trunk@1265 61d68cd4-352d-0410-923a-c4978735b2b8
This commit is contained in:
Adam Amstrong 2010-06-25 13:04:03 +00:00
parent 19ccf99d8f
commit 9542635761
6 changed files with 119 additions and 102 deletions

View File

@ -16,5 +16,6 @@ CREATE TABLE IF NOT EXISTS `ucd_diskio` ( `diskio_id` int(11) NOT NULL AUTO_INC
ALTER TABLE `eventlog` CHANGE `type` `type` VARCHAR( 64 ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL;
ALTER TABLE `bills` ADD `bill_custid` VARCHAR( 64 ) NOT NULL ,ADD `bill_ref` VARCHAR( 64 ) NOT NULL ,ADD `bill_notes` VARCHAR( 256 ) NOT NULL;
CREATE TABLE IF NOT EXISTS `applications` ( `app_id` int(11) NOT NULL AUTO_INCREMENT, `device_id` int(11) NOT NULL, `app_type` varchar(64) NOT NULL, PRIMARY KEY (`app_id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
## 0.10.6
CREATE TABLE IF NOT EXISTS `sensors` ( `sensor_id` int(11) NOT NULL auto_increment, `sensor_class` varchar(64) NOT NULL, `device_id` int(11) NOT NULL default '0', `sensor_oid` varchar(64) NOT NULL, `sensor_index` varchar(8) NOT NULL, `sensor_type` varchar(32) NOT NULL, `sensor_descr` varchar(32) NOT NULL default '', `sensor_precision` int(11) NOT NULL default '1', `sensor_current` float default NULL, `sensor_limit` float default NULL, `sensor_limit_warn` float default NULL, `sensor_limit_low` float default NULL, `sensor_limit_low_warn` float default NULL, PRIMARY KEY (`sensor_id`), KEY `sensor_host` (`device_id`)) ENGINE=MyISAM AUTO_INCREMENT=189 DEFAULT CHARSET=latin1;
ALTER TABLE `devices` CHANGE `type` `type` VARCHAR(20) NOT NULL;

View File

@ -11,21 +11,26 @@ function generateiflink($interface, $text=0, $type = NULL)
function generatedevicelink($device, $text=0, $start=0, $end=0)
{
global $twoday; global $day; global $now; global $config; global $popgraph; global $popdescr;
global $twoday; global $day; global $now; global $config;
if (!$start) { $start = $day; }
if (!$end) { $end = $now; }
$class = devclass($device);
if (!$text) { $text = $device['hostname']; }
if (isset($popgraph[$device['os']]))
if (isset($config['os'][$device['os']]['overgraph']))
{
$graphs = $popgraph[$device['os']];
$descr = $popdescr[$device['os']];
$graphs = $config['os'][$device['os']]['overgraph'];
$descr = $config['os'][$device['os']]['overtext'];
}
elseif (isset($config['os'][$device['os_group']]['overgraph']))
{
$graphs = $config['os'][$device['os_group']]['overgraph'];
$descr = $config['os'][$device['os_group']]['overtext'];
}
else
{
$graphs = $popgraph['default'];
$descr = $popdescr['default'];
$graphs = $config['os']['default']['overgraph'];
$descr = $config['os']['default']['overtext'];
}
$url = $config['base_url']."/device/" . $device['device_id'] . "/";

View File

@ -59,7 +59,7 @@ while ($interface = mysql_fetch_array($interface_query)) {
}
}
if($config[ifname][$device[os]]) { $ifDescr = $ifName; }
if($config['os'][$device[os]]['ifname']) { $ifDescr = $ifName; }
$rrdfile = $host_rrd . "/" . safename($interface['ifIndex'] . ".rrd");

View File

@ -15,16 +15,16 @@ function ifLabel ($interface, $device = NULL) {
if(!$device) { $device = device_array($interface['device_id']); }
$os = strtolower($device['os']);
if(isset($config['ifname'][$os])) {
if (isset($config['os'][$os]['ifname'])) {
$interface['label'] = $interface['ifName'];
} elseif(isset($config['ifAlias'][$os])) {
} elseif (isset($config['os'][$os]['ifalias'])) {
$interface['label'] = $interface['ifAlias'];
} else {
$interface['label'] = $interface['ifDescr'];
if(isset($config['appendifindex'][$os])) { $interface['label'] = $interface['label'] . " " . $interface['ifIndex']; }
if (isset($config['os'][$os]['ifindex'])) { $interface['label'] = $interface['label'] . " " . $interface['ifIndex']; }
}
if($device['os'] == "speedtouch") {
if ($device['os'] == "speedtouch") {
list($interface['label']) = explode("thomson", $interface['label']);
}

View File

@ -19,7 +19,7 @@ function snmp_get ($device, $oid, $options = NULL, $mib = NULL, $mibdir = NULL)
function snmp_walk($device, $oid, $options = NULL, $mib = NULL, $mibdir = NULL)
{
global $debug; global $config; global $runtime_stats;
if ($device['snmpver'] == 'v1' || in_array($device['os'],$config['nobulkwalk']))
if ($device['snmpver'] == 'v1' || $config['os'][$device['os']]['nobulk'])
{
$snmpcommand = $config['snmpwalk'];
}
@ -43,7 +43,7 @@ function snmp_walk($device, $oid, $options = NULL, $mib = NULL, $mibdir = NULL)
function snmp_cache_cip($oid, $device, $array, $mib = 0)
{
global $config;
if ($device['snmpver'] == 'v1' || in_array($device['os'],$config['nobulkwalk']))
if ($device['snmpver'] == 'v1' || $config['os'][$device['os']]['nobulk'])
{
$snmpcommand = $config['snmpwalk'];
}
@ -80,7 +80,7 @@ function snmp_cache_cip($oid, $device, $array, $mib = 0)
function snmp_cache_ifIndex($device) {
global $config;
if ($device['snmpver'] == 'v1' || in_array($device['os'],$config['nobulkwalk']))
if ($device['snmpver'] == 'v1' || $config['os'][$device['os']]['nobulk'])
{
$snmpcommand = $config['snmpwalk'];
}
@ -173,7 +173,7 @@ function snmpwalk_cache_triple_oid($device, $oid, $array, $mib = NULL, $mibdir =
function snmpwalk_cache_twopart_oid($oid, $device, $array, $mib = 0) {
global $config;
if ($device['snmpver'] == 'v1' || in_array($device['os'],$config['nobulkwalk']))
if ($device['snmpver'] == 'v1' || $config['os'][$device['os']]['nobulk'])
{
$snmpcommand = $config['snmpwalk'];
}
@ -199,7 +199,7 @@ function snmpwalk_cache_twopart_oid($oid, $device, $array, $mib = 0) {
function snmpwalk_cache_threepart_oid($oid, $device, $array, $mib = 0) {
global $config, $debug;
if ($device['snmpver'] == 'v1' || in_array($device['os'],$config['nobulkwalk']))
if ($device['snmpver'] == 'v1' || $config['os'][$device['os']]['nobulk'])
{
$snmpcommand = $config['snmpwalk'];
}
@ -226,7 +226,7 @@ function snmpwalk_cache_threepart_oid($oid, $device, $array, $mib = 0) {
function snmp_cache_slotport_oid($oid, $device, $array, $mib = 0) {
global $config;
if ($device['snmpver'] == 'v1' || in_array($device['os'],$config['nobulkwalk']))
if ($device['snmpver'] == 'v1' || $config['os'][$device['os']]['nobulk'])
{
$snmpcommand = $config['snmpwalk'];
}
@ -255,7 +255,7 @@ function snmp_cache_slotport_oid($oid, $device, $array, $mib = 0) {
function snmp_cache_oid($oid, $device, $array, $mib = 0) {
global $config;
if ($device['snmpver'] == 'v1' || in_array($device['os'],$config['nobulkwalk']))
if ($device['snmpver'] == 'v1' || $config['os'][$device['os']]['nobulk'])
{
$snmpcommand = $config['snmpwalk'];
}

View File

@ -1,15 +1,5 @@
<?php
## ifDescr whitelist (used instead of ifName)
$config['ifname']['asa'] = true;
$config['ifname']['catos'] = true;
$config['ifname']['windows'] = true;
$config['ifname']['speedtouch'] = true;
$config['ifname']['dell-laser'] = true;
$config['ifname']['powerconnect'] = true;
$config['ifalias']['adva'] = true;
#$config['appendifindex']['adva'] = true;
## AFI / SAFI pairs for BGP (and other stuff, perhaps)
$config['afi']['ipv4']['unicast'] = "IPv4";
$config['afi']['ipv4']['multiicast'] = "IPv4 Multicast";
@ -17,72 +7,124 @@ $config['afi']['ipv4']['vpn'] = "VPNv4";
$config['afi']['ipv6']['unicast'] = "IPv6";
$config['afi']['ipv6']['multicast'] = "IPv6 Multicast";
## Don't bulkwalk for these OS types
$config['nobulkwalk'] = array("netmanplus");
$config['os']['default']['overgraph'][] = "device_cpu";
$config['os']['default']['overgraph'][] = "device_memory";
$config['os']['default']['overtext'] = "CPU &amp; Memory Usage";
$config['os']['linux']['group'] = "unix";
$config['os']['linux']['text'] = "Linux";
$config['os']['freebsd']['group'] = "unix";
$config['os']['freebsd']['text'] = "FreeBSD";
$config['os']['openbsd']['group'] = "unix";
$config['os']['openbsd']['text'] = "OpenBSD";
$config['os']['netbsd']['group'] = "unix";
$config['os']['netbsd']['text'] = "NetBSD";
$config['os']['dragonfly']['group'] = "unix";
$config['os']['dragonfly']['text'] = "DragonflyBSD";
$config['os']['monowall']['group'] = "unix";
$config['os']['monowall']['text'] = "m0n0wall";
$config['os']['solaris']['group'] = "unix";
$config['os']['solaris']['text'] = "Sun Solaris";
$config['os']['opensolaris']['group'] = "unix";
$config['os']['opensolaris']['text'] = "Adva";
$config['os']['opensolaris']['group'] = "unix";
$config['os']['opensolaris']['text'] = "Sun OpenSolaris";
$config['os']['linux']['group'] = "unix";
$config['os']['linux']['text'] = "Linux";
$config['os']['ios']['group'] = "ios";
$config['os']['ios']['text'] = "Cisco IOS";
$config['os']['iosxe']['group'] = "ios";
$config['os']['iosxe']['text'] = "Cisco IOS-XE";
$config['os']['iosxr']['group'] = "ios";
$config['os']['iosxr']['text'] = "Cisco IOS-XR";
$config['os']['asa']['group'] = "ios";
$config['os']['asa']['text'] = "Cisco ASA";
$config['os']['pix']['group'] = "ios";
$config['os']['pix']['text'] = "Cisco PIXOS";
$config['os']['nxos']['group'] = "ios";
$config['os']['nxos']['text'] = "Cisco NX-OS";
$config['os']['catos']['group'] = "ios";
$config['os']['catos']['text'] = "Cisco CatOS";
$config['os']['freebsd']['group'] = "unix";
$config['os']['freebsd']['text'] = "FreeBSD";
$config['os']['junos']['text'] = "Juniper JunOS";
$config['os']['junose']['text'] = "Juniper JunOSe";
$config['os']['openbsd']['group'] = "unix";
$config['os']['openbsd']['text'] = "OpenBSD";
$config['os']['netbsd']['group'] = "unix";
$config['os']['netbsd']['text'] = "NetBSD";
$config['os']['dragonfly']['group'] = "unix";
$config['os']['dragonfly']['text'] = "DragonflyBSD";
$config['os']['monowall']['group'] = "unix";
$config['os']['monowall']['text'] = "m0n0wall";
$config['os']['solaris']['group'] = "unix";
$config['os']['solaris']['text'] = "Sun Solaris";
$config['os']['adva']['group'] = "unix";
$config['os']['adva']['text'] = "Adva";
$config['os']['adva']['ifalias'] = 1;
$config['os']['opensolaris']['group'] = "unix";
$config['os']['opensolaris']['text'] = "Sun OpenSolaris";
$config['os']['ios']['group'] = "ios";
$config['os']['ios']['text'] = "Cisco IOS";
$config['os']['iosxe']['group'] = "ios";
$config['os']['iosxe']['text'] = "Cisco IOS-XE";
$config['os']['iosxr']['group'] = "ios";
$config['os']['iosxr']['text'] = "Cisco IOS-XR";
$config['os']['asa']['group'] = "ios";
$config['os']['asa']['text'] = "Cisco ASA";
$config['os']['asa']['ifname'] = 1;
$config['os']['pix']['group'] = "ios";
$config['os']['pix']['text'] = "Cisco PIX-OS";
$config['os']['pix']['ifname'] = 1;
$config['os']['nxos']['group'] = "ios";
$config['os']['nxos']['text'] = "Cisco NX-OS";
$config['os']['catos']['group'] = "ios";
$config['os']['catos']['text'] = "Cisco CatOS";
$config['os']['catos']['ifname'] = 1;
$config['os']['junos']['text'] = "Juniper JunOS";
$config['os']['junose']['text'] = "Juniper JunOSe";
$config['os']['mgeups']['group'] = "ups";
$config['os']['mgeups']['text'] = "MGE UPSS";
$config['os']['netmanplus']['group'] = "ups";
$config['os']['netmanplus']['text'] = "NetMan Plus";
$config['os']['mgeups']['group'] = "ios";
$config['os']['mgeups']['text'] = "Cisco IOS";
$config['os']['netmanplus']['group'] = "ios";
$config['os']['netmanplus']['text'] = "";
$config['os']['generic']['text'] = "Generic Device";
$config['os']['ironware']['text'] = "Brocade IronWare";
$config['os']['powerconnect']['text'] = "Dell PowerConnect";
$config['os']['powerconnect']['ifname'] = 1;
$config['os']['windows']['text'] = "Microsoft Windows";
$config['os']['windows']['ifname'] = 1;
$config['os']['procurve']['text'] = "HP ProCurve";
$config['os']['speedtouch']['text'] = "Thomson Speedtouch";
$config['os']['speedtouch']['ifname'] = 1;
$config['os']['allied']['text'] = "AlliedWare";
$config['os']['mgeups']['text'] = "MGE UPS";
$config['os']['mgeups']['group'] = "ups";
$config['os']['mgeups']['overgraph'][] = "device_current";
$config['os']['mgeups']['overtext'] = "Current"
$config['os']['apc']['text'] = "APC Management Module";
$config['os']['apc']['overgraph'][] = "device_current";
$config['os']['apc']['overtext'] = "Current"
$config['os']['areca']['text'] = "Areca RAID Subsystem";
$config['os']['areca']['overgraph'][] = ""
$config['os']['areca']['overtext'] = ""
$config['os']['netmanplus']['text'] = "NetMan Plus";
$config['os']['netmanplus']['group'] = "ups";
$config['os']['netmanplus']['nobulk'] = 1;
$config['os']['netmanplus']['overgraph'][] = "device_current";
$config['os']['netmanplus']['overtext'] = "Current";
$config['os']['akcp']['text'] = "AKCP SensorProbe";
$config['os']['akcp']['overgraph'][] = "device_temperature";
$config['os']['akcp']['overtext'] = "Temperature"
$config['os']['minkelsrms']['text'] = "Minkels RMS";
$config['os']['minkelsrms']['overgraph'][] = "device_temperature";
$config['os']['minkelsrms']['overtext'] = "Temperature";
$config['os']['papouch-tme']['text'] = "Papouch TME";
$config['os']['papouch-tme']['overgraph'] = "device_temperature";
$config['os']['papouch-tme']['overtext'] = "Temperature";
$config['os']['dell-laser']['group'] = "printer";
$config['os']['dell-laser']['text'] = "Dell Laser";
$config['os']['dell-laser']['group'] = "printer";
$config['os']['dell-laser']['text'] = "Dell Laser";
$config['os']['dell-laser']['overgraph'][] = "device_toner";
$config['os']['dell-laser']['overtext'] = "Toner"
$config['os']['dell-laser']['ifname'] = 1;
if(!$config['graph_colours']['greens']) {
$config['graph_colours']['greens'] = array('B6D14B','91B13C','6D912D','48721E','24520F','003300');
@ -105,37 +147,6 @@ if(!$config['graph_colours']['mixed']) {
$device_types = array('server','network','firewall','workstation','printer','power', 'environment');
## Popup graphs
# Default
$popgraph['default'][] = 'device_cpu';
$popgraph['default'][] = 'device_memory';
$popdescr['default'] = "CPU &amp; Memory Usage";
$popgraph['apc'][] = 'device_current';
$popdescr['apc'] = "Current";
$popgraph['mgeups'][] = 'device_current';
$popdescr['mgeups'] = "Current";
$popgraph['dell-laser'][] = 'device_toner';
$popdescr['dell-laser'] = "Toner";
#$popgraph['areca'][] = 'device_';
#$popdescr['areca'] = "";
$popgraph['netmanplus'][] = 'device_current';
$popdescr['netmanplus'] = "Current";
$popgraph['akcp'][] = 'device_temperatures';
$popdescr['akcp'] = "Temperature";
$popgraph['minkelsrms'] = $popgraph['akcp'];
$popdescr['minkelsrms'] = $popdescr['akcp'];
$popgraph['papouch-tme'][] = 'device_temperatures';
$popdescr['papouch-tme'] = "Temperature";
##############################
# No changes below this line #
##############################