コード例 #1
0
# NS-ROOT-MIB::vsvrTotSpillOvers."observium" = Counter32: 0
# NS-ROOT-MIB::vsvrTotalClients."observium" = Counter64: 43023
# NS-ROOT-MIB::vsvrClientConnOpenRate."observium" = STRING: "0"
if ($device['os'] == "netscaler") {
    /// Services <> Vservers
    echo "Netscaler services <> vservers\n";
    echo str_pad("VServer", 25) . " | " . str_pad("Service", 25) . " | " . str_pad("Type", 16) . " | " . str_pad("Weight", 16) . "\n" . str_pad("", 90, "-") . "\n";
    $sv_db = dbFetchRows("SELECT * FROM `netscaler_services_vservers` WHERE `device_id` = ?", array($device['device_id']));
    foreach ($sv_db as $sv) {
        $svs_db[$sv['vsvr_name']][$sv['svc_name']] = $sv;
        $svs_exist[$sv['sv_id']] = array('vsvr_name' => $sv['vsvr_name'], 'svc_name' => $sv['svc_name']);
    }
    if ($debug) {
        print_r($svs_db);
    }
    $svc_vsvrs = snmp_walk_parser($device, "vserverServiceEntry", 3, "NS-ROOT-MIB");
    foreach ($svc_vsvrs as $vserver => $svs) {
        foreach ($svs as $service => $sv) {
            echo str_pad($vserver, 25) . " | " . str_pad($service, 25) . " | " . str_pad($sv['vsvrServiceEntityType'], 16) . " | " . str_pad($sv['serviceWeight'], 16);
            if (is_array($svs_db[$vserver][$service])) {
                /// FIXME Update Code
                dbUpdate(array('service_weight' => $sv['serviceWeight']), 'netscaler_services_vservers', '`device_id` = ? AND `vsvr_name` = ? AND `svc_name` = ?', array($device['device_id'], $vserver, $service));
                echo "U";
                unset($svs_exist[$svs_db[$vserver][$service]['sv_id']]);
            } else {
                dbInsert(array('device_id' => $device['device_id'], 'vsvr_name' => $vserver, 'svc_name' => $service, 'service_weight' => $sv['serviceWeight']), 'netscaler_services_vservers');
                echo "+";
            }
            echo "\n";
        }
    }
コード例 #2
0
## NS-ROOT-MIB::vsvrTotSpillOvers."observium" = Counter32: 0
## NS-ROOT-MIB::vsvrTotalClients."observium" = Counter64: 43023
## NS-ROOT-MIB::vsvrClientConnOpenRate."observium" = STRING: "0"
if ($device['os'] == "netscaler") {
    /// Services <> Vservers
    echo "Netscaler services <> vservers\n";
    echo str_pad("VServer", 25) . " | " . str_pad("Service", 25) . " | " . str_pad("Type", 16) . " | " . str_pad("Weight", 16) . "\n" . str_pad("", 90, "-") . "\n";
    $sv_db = dbFetchRows("SELECT * FROM `netscaler_services_vservers` WHERE `device_id` = ?", array($device['device_id']));
    foreach ($sv_db as $sv) {
        $svs_db[$sv['vsvr_name']][$sv['svc_name']] = $sv;
        $svs_exist[$sv['sv_id']] = array('vsvr_name' => $sv['vsvr_name'], 'svc_name' => $sv['svc_name']);
    }
    if (OBS_DEBUG) {
        print_vars($svs_db);
    }
    $svc_vsvrs = snmp_walk_parser($device, "vserverServiceEntry", 3, "NS-ROOT-MIB", mib_dirs('citrix'));
    foreach ($svc_vsvrs as $vserver => $svs) {
        foreach ($svs as $service => $sv) {
            echo str_pad($vserver, 25) . " | " . str_pad($service, 25) . " | " . str_pad($sv['vsvrServiceEntityType'], 16) . " | " . str_pad($sv['serviceWeight'], 16);
            if (is_array($svs_db[$vserver][$service])) {
                /// FIXME Update Code
                dbUpdate(array('service_weight' => $sv['serviceWeight']), 'netscaler_services_vservers', '`device_id` = ? AND `vsvr_name` = ? AND `svc_name` = ?', array($device['device_id'], $vserver, $service));
                echo "U";
                unset($svs_exist[$svs_db[$vserver][$service]['sv_id']]);
            } else {
                dbInsert(array('device_id' => $device['device_id'], 'vsvr_name' => $vserver, 'svc_name' => $service, 'service_weight' => $sv['serviceWeight']), 'netscaler_services_vservers');
                echo "+";
            }
            echo "\n";
        }
    }