diff --git a/xCAT-UI/js/monitor/rmcmon.js b/xCAT-UI/js/monitor/rmcmon.js
index f0890315e..790ace54e 100644
--- a/xCAT-UI/js/monitor/rmcmon.js
+++ b/xCAT-UI/js/monitor/rmcmon.js
@@ -9,6 +9,7 @@ function loadRmcMon(){
//add the configure button.
var configButton = createButton('Configure');
+ configButton.hide();
configButton.click(function(){
if ($('#rmcMonConfig').is(':hidden')){
$('#rmcMonConfig').show();
@@ -16,7 +17,7 @@ function loadRmcMon(){
else{
$('#rmcMonConfig').hide();
}
- });
+ });
rmcMonTab.append(configButton);
//add configure div
@@ -42,7 +43,58 @@ function loadRmcMon(){
}
function loadRmcMonConfigure(){
- $('#rmcMonConfig').append('under construction.');
+ //get the configure div and clean its content.
+ var rmcmonCfgDiv = $('#rmcMonConfig');
+ rmcmonCfgDiv.empty();
+
+ //add the start button
+ var startButton = createButton('Start');
+ rmcmonCfgDiv.append(startButton);
+ startButton.click(function(){
+ $('#rmcMonStatus').empty().append(createLoader());
+ $.ajax({
+ url : 'lib/cmd.php',
+ dataType : 'json',
+ data : {
+ cmd : 'webrun',
+ tgt : '',
+ args : 'rmcstart;lpar',
+ msg : ''
+ },
+
+ success : function(data){
+ $('#rmcMonStatus').empty().append(data.rsp[0]);
+ }
+ });
+ });
+
+ //add the stop button
+ var stopButton = createButton('Stop');
+ rmcmonCfgDiv.append(stopButton);
+ stopButton.click(function(){
+ $('#rmcMonStatus').empty().append(createLoader());
+ $.ajax({
+ url : 'lib/cmd.php',
+ dataType : 'json',
+ data : {
+ cmd : 'monstop',
+ tgt : '',
+ args : 'rmcmon',
+ msg : ''
+ },
+
+ success : function(data){
+ $('#rmcMonStatus').empty().append(data.rsp[0]);
+ }
+ });
+ });
+
+ //add the cancel button
+ var cancelButton = createButton('Cancel');
+ rmcmonCfgDiv.append(cancelButton);
+ cancelButton.click(function(){
+ $('#rmcMonConfig').hide();
+ });
}
function rsctRpmCheck(data){
//linux had to check the rscp first
@@ -56,8 +108,8 @@ function rsctRpmCheck(data){
success : function(data){
if (-1 != data.rsp.indexOf("not")){
- $('#rmcMonStatus').empty().append('Please install the RSCT first.
The software can be downloaded from ' +
- 'RSCT\'s RMC subsystem.
' +
+ $('#rmcMonStatus').empty().append(
+ 'Please install the RSCT first.
' +
'You can find more support form xCAT2-Monitoring.pdf');
}
else{
@@ -76,22 +128,62 @@ function xcatrmcRpmCheck(){
url : 'lib/systemcmd.php',
dataType : 'json',
data : {
- cmd : 'rpm -q xCAT-rmc'
+ cmd : 'rpm -q xCAT-rmc rrdtool'
},
success : function(data){
- if(-1 != data.rsp.indexOf("not")){
- $('#rmcMonStatus').empty().append('Please install the xCAT-rmc first.
The software can be downloaded from ' +
- 'xCAT Download Page.
'+
- 'You can find more support form xCAT2-Monitoring.pdf');
+ var softInstallStatus = data.rsp.split(/\n/);
+ var needHelp = false;
+ $('#rmcMonStatus').empty();
+ //check the xcat-rmc
+ if(-1 != softInstallStatus[0].indexOf("not")){
+ needHelp = true;
+ $('#rmcMonStatus').append(
+ 'Please install the xCAT-rmc first.
');
+ }
+
+ //check the rrdtool
+ if(-1 != softInstallStatus[1].indexOf("not")){
+ needHelp = true;
+ $('#rmcMonStatus').append(
+ 'Please install the RRD-tool first.
');
+ }
+
+ //add help info or load the rmc show
+ if (needHelp){
+ $('#rmcMonStatus').append(
+ 'You can find more support form xCAT2-Monitoring.pdf');
}
else{
- loadRmcMonShow();
+ rmcWorkingCheck();
}
}
});
}
+function rmcWorkingCheck(){
+ $('#rmcMonStatus').empty().append("Checking RMC working status.");
+ $('#rmcMonStatus').append(createLoader());
+ $('#rmcmon button:first').show();
+ $.ajax({
+ url : 'lib/cmd.php',
+ dataType : 'json',
+ data : {
+ cmd : 'monls',
+ tgt : '',
+ args : 'rmcmon',
+ msg : ''
+ },
+
+ success : function(data){
+ if (-1 != data.rsp[0].indexOf("not-monitored")){
+ $('#rmcMonStatus').empty().append("Please start the RMC Monitoring first.");
+ return;
+ }
+ loadRmcMonShow();
+ }
+ });
+}
function loadRmcMonShow(){
$('#rmcMonStatus').empty().append('The RMC Monitor is under construction.');
$('#rmcMonShow').empty().append('under construction.');