mirror of
				https://github.com/xcat2/xcat-core.git
				synced 2025-11-03 21:02:34 +00:00 
			
		
		
		
	git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@4605 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
		
			
				
	
	
		
			133 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			133 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
/*
 | 
						|
 * setup.php
 | 
						|
 * to perform the "monstart" and "monstop" actions for the monitoring plugins
 | 
						|
 */
 | 
						|
 | 
						|
if(!isset($TOPDIR)) { $TOPDIR="..";}
 | 
						|
 | 
						|
require_once "$TOPDIR/lib/security.php";
 | 
						|
require_once "$TOPDIR/lib/functions.php";
 | 
						|
require_once "$TOPDIR/lib/display.php";
 | 
						|
require_once "$TOPDIR/lib/monitor_display.php";
 | 
						|
 | 
						|
$name = $_REQUEST['name'];
 | 
						|
$action = $_REQUEST['action'];
 | 
						|
$nm = $_REQUEST['nm'];//node status monitoring: yes or no
 | 
						|
$noderange = $_REQUEST['nr'];
 | 
						|
 | 
						|
if($action == "Disable") {
 | 
						|
    //FIXIT: it seems rmcmon has sth wrong with monstop
 | 
						|
    //The var $noderange can't work
 | 
						|
    $xml = docmd("monstop", " ", array("$name", "$noderange" , "-r"));
 | 
						|
    if(getXmlErrors($xml, $errors)) {
 | 
						|
        echo "<p class=Error>",implode(' ', $errors), "</p>";
 | 
						|
        exit;
 | 
						|
    }
 | 
						|
    $xml = docmd("mondecfg", " ", array("$name", "$noderange"));
 | 
						|
    if(getXmlErrors($xml, $errors)) {
 | 
						|
        echo "<p class=Error>", implode(' ', $errors), "</p>";
 | 
						|
        exit;
 | 
						|
    }
 | 
						|
    echo "successful";
 | 
						|
}else if($action == "Enable") {
 | 
						|
    //at first, check "-n"
 | 
						|
    if($nm == "yes") {
 | 
						|
        $xml=docmd("monrm", "", array("$name"));
 | 
						|
        $xml = docmd("monadd", "", array("$name", "-n"));
 | 
						|
    } else if($nm == "no") {
 | 
						|
        $xml = docmd("monrm", "", array("$name"));
 | 
						|
        $xml = docmd("monadd", "", array("$name"));
 | 
						|
    }
 | 
						|
    //then, moncfg
 | 
						|
    $xml = docmd("moncfg", " ", array("$name", "$noderange"));
 | 
						|
    if(getXmlErrors($xml, $errors)) {
 | 
						|
        echo "<p class=Error>", implode(' ', $errors), "</p>";
 | 
						|
        exit;
 | 
						|
    }
 | 
						|
    //special case for rmcmon
 | 
						|
    if($name == "rmcmon") {
 | 
						|
        $xml = docmd("moncfg", " ", array("$name", "$noderange", "-r"));
 | 
						|
        if(getXmlErrors($xml, $errors)) {
 | 
						|
            echo "<p class=Error>", implode(' ', $errors), "</p>";
 | 
						|
            exit;
 | 
						|
        }
 | 
						|
    }
 | 
						|
    $xml = docmd("monstart", " ", array("$name", "$noderange", "-r"));
 | 
						|
    if(getXmlErrors($xml, $errors)) {
 | 
						|
        echo "<p class=Error>", implode(' ', $errors), "</p>";
 | 
						|
        exit;
 | 
						|
    }
 | 
						|
    echo "successful";
 | 
						|
}
 | 
						|
 | 
						|
//switch($action) {
 | 
						|
//    case "stop":
 | 
						|
//        monstop($name);
 | 
						|
//        break;
 | 
						|
//    case "restart":
 | 
						|
//        monrestart($name);
 | 
						|
//        break;
 | 
						|
//    case "start":
 | 
						|
//        monstart($name);
 | 
						|
//        break;
 | 
						|
//    default:
 | 
						|
//        break;
 | 
						|
//}
 | 
						|
//
 | 
						|
//function monstop($plugin)
 | 
						|
//{
 | 
						|
//    $xml = docmd("monstop", "", array("$plugin","-r"));
 | 
						|
//    return 0;
 | 
						|
//}
 | 
						|
//
 | 
						|
//function monrestart($plugin)
 | 
						|
//{
 | 
						|
//    $xml = docmd("monstop", "", array("$plugin", "-r"));
 | 
						|
//    if(getXmlErrors($xml, $errors)) {
 | 
						|
//        echo "<p class=Error>",implode(' ', $errors), "</p>";
 | 
						|
//        exit;
 | 
						|
//    }
 | 
						|
//    $xml = docmd("moncfg", "", array("$plugin", "-r"));
 | 
						|
//    if(getXmlErrors($xml, $errors)) {
 | 
						|
//        echo "<p class=Error>",implode(' ', $errors), "</p>";
 | 
						|
//        exit;
 | 
						|
//    }
 | 
						|
//
 | 
						|
//    $xml = docmd("monstart", "", array("$plugin", "-r"));
 | 
						|
//    return 0;
 | 
						|
//}
 | 
						|
//
 | 
						|
//function monstart($plugin)
 | 
						|
//{
 | 
						|
//    //Before running "monstart", the command "monls" is used to check
 | 
						|
//    $xml = docmd("monls","", NULL);
 | 
						|
//    if(getXmlErrors($xml, $errors)) {
 | 
						|
//        echo "<p class=Error>",implode(' ', $errors), "</p>";
 | 
						|
//        exit;
 | 
						|
//    }
 | 
						|
//    $has_plugin = false;
 | 
						|
//    if(count($xml->children()) != 0) {
 | 
						|
//        foreach($xml->children() as $response)  foreach($response->children() as $data) {
 | 
						|
//            $arr = preg_split("/\s+/", $data);
 | 
						|
//            if($arr[0] == $plugin) {
 | 
						|
//                $has_plugin = true;
 | 
						|
//            }
 | 
						|
//        }
 | 
						|
//    }
 | 
						|
//    if($has_plugin == false) {
 | 
						|
//        //if $has_plugin == false, that means the plugin is not added into the monitoring table
 | 
						|
//        $xml = docmd("monadd",'', array("$plugin"));
 | 
						|
//        if(getXmlErrors($xml, $errors)) {
 | 
						|
//            echo "<p class=Error>",implode(' ', $errors), "</p>";
 | 
						|
//            exit;
 | 
						|
//        }
 | 
						|
//    }
 | 
						|
//    //we have to make sure that the plugin is added in the "monitoring" table
 | 
						|
//    $xml = docmd("monstart", "", array("$plugin", "-r"));
 | 
						|
//    return 0;
 | 
						|
//}
 | 
						|
//
 | 
						|
//?>
 |