2010-08-04 08:49:20 +00:00
function loadRmcMon ( ) {
//find the rmcmon tab
var rmcMonTab = $ ( '#rmcmon' ) ;
//add the stauts bar first. id = 'rmcMonStatus'
var rmcStatusBar = createStatusBar ( 'rmcMonStatus' ) ;
rmcStatusBar . append ( createLoader ( ) ) ;
rmcMonTab . append ( rmcStatusBar ) ;
//add the configure button.
var configButton = createButton ( 'Configure' ) ;
2010-08-22 14:58:21 +00:00
configButton . hide ( ) ;
2010-08-04 08:49:20 +00:00
configButton . click ( function ( ) {
if ( $ ( '#rmcMonConfig' ) . is ( ':hidden' ) ) {
$ ( '#rmcMonConfig' ) . show ( ) ;
}
else {
$ ( '#rmcMonConfig' ) . hide ( ) ;
}
2010-08-22 14:58:21 +00:00
} ) ;
2010-08-04 08:49:20 +00:00
rmcMonTab . append ( configButton ) ;
//add configure div
rmcMonTab . append ( "<div id='rmcMonConfig'></div>" ) ;
$ ( '#rmcMonConfig' ) . hide ( ) ;
//load the configure div's content
loadRmcMonConfigure ( ) ;
//add the content of the rmcmon, id = 'rmcMonTab'
rmcMonTab . append ( "<div id='rmcMonShow'></div>" ) ;
//check the software work status by platform(linux and aix)
$ . ajax ( {
url : 'lib/systemcmd.php' ,
dataType : 'json' ,
data : {
cmd : 'ostype'
} ,
success : rsctRpmCheck
} ) ;
}
function loadRmcMonConfigure ( ) {
2010-08-22 14:58:21 +00:00
//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 ( ) ;
} ) ;
2010-08-04 08:49:20 +00:00
}
function rsctRpmCheck ( data ) {
//linux had to check the rscp first
if ( 'aix' != data . rsp ) {
$ . ajax ( {
url : 'lib/systemcmd.php' ,
dataType : 'json' ,
data : {
cmd : 'rpm -q rsct.core'
} ,
success : function ( data ) {
if ( - 1 != data . rsp . indexOf ( "not" ) ) {
2010-08-22 14:58:21 +00:00
$ ( '#rmcMonStatus' ) . empty ( ) . append (
'Please install the <a href="http://www14.software.ibm.com/webapp/set2/sas/f/rsct/rmc/download/home.html" target="install_window">RSCT</a> first.<br/>' +
2010-08-04 08:49:20 +00:00
'You can find more support form <a href="http://xcat.svn.sourceforge.net/viewvc/xcat/xcat-core/trunk/xCAT-client/share/doc/xCAT2-Monitoring.pdf" target="pdf_window">xCAT2-Monitoring.pdf</a>' ) ;
}
else {
xcatrmcRpmCheck ( ) ;
}
}
} ) ;
}
else {
xcatrmcRpmCheck ( ) ;
}
}
function xcatrmcRpmCheck ( ) {
$ . ajax ( {
url : 'lib/systemcmd.php' ,
dataType : 'json' ,
data : {
2010-08-22 14:58:21 +00:00
cmd : 'rpm -q xCAT-rmc rrdtool'
2010-08-04 08:49:20 +00:00
} ,
success : function ( data ) {
2010-08-22 14:58:21 +00:00
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 <a href="http://xcat.sourceforge.net/#download" target="install_window">xCAT-rmc</a> first.<br/>' ) ;
}
//check the rrdtool
if ( - 1 != softInstallStatus [ 1 ] . indexOf ( "not" ) ) {
needHelp = true ;
$ ( '#rmcMonStatus' ) . append (
'Please install the <a href="http://oss.oetiker.ch/rrdtool/download.en.html" target="install_window">RRD-tool</a> first.<br/>' ) ;
}
//add help info or load the rmc show
if ( needHelp ) {
$ ( '#rmcMonStatus' ) . append (
'You can find more support form <a href="http://xcat.svn.sourceforge.net/viewvc/xcat/xcat-core/trunk/xCAT-client/share/doc/xCAT2-Monitoring.pdf" target="pdf_window">xCAT2-Monitoring.pdf</a>' ) ;
2010-08-04 08:49:20 +00:00
}
else {
2010-08-22 14:58:21 +00:00
rmcWorkingCheck ( ) ;
2010-08-04 08:49:20 +00:00
}
}
} ) ;
}
2010-08-22 14:58:21 +00:00
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 ( ) ;
}
} ) ;
}
2010-08-04 08:49:20 +00:00
function loadRmcMonShow ( ) {
$ ( '#rmcMonStatus' ) . empty ( ) . append ( 'The RMC Monitor is under construction.' ) ;
$ ( '#rmcMonShow' ) . empty ( ) . append ( 'under construction.' ) ;
}