Exemplo n.º 1
0
def status(compList=False):
    """
    _status_

    Print status of all components in config file

    """
    config = os.environ.get("PRODAGENT_CONFIG", None)
    cfgObject = ProdAgentConfiguration()
    cfgObject.loadFromFile(config)

    components = cfgObject.listComponents()
    if compList: return components
    else:
        component_run = []
        component_down = []
        for component in components:
            compCfg = cfgObject.getConfig(component)
            compDir = compCfg['ComponentDir']
            compDir = os.path.expandvars(compDir)
            daemonXml = os.path.join(compDir, "Daemon.xml")
            if not os.path.exists(daemonXml):
                continue
            daemon = DaemonDetails(daemonXml)
            if not daemon.isAlive():
 
                component_down.append(component)
            else:
                tmp=[component, daemon['ProcessID']]
                component_run.append(tmp)
        return component_run, component_down
Exemplo n.º 2
0
      def generateHTML(self):

           """
           Method to generate HTML CODE for main page      
           """
           
           
           config = os.environ.get("PRODAGENT_CONFIG", None)
           if config == None:
              msg = "No ProdAgent Config file provided\n"
              msg += "either set $PRODAGENT_CONFIG variable\n"
              msg += "or provide the --config option"
              raise RuntimeError,msg

           cfgObject = ProdAgentConfiguration()
           cfgObject.loadFromFile(config)
           components = cfgObject.listComponents()
 
           html =  """
           <html><head><title>ALERT MONITORING TOOL</title>
           <script type=text/javascript>
             function formsubmit()
             {
 alert('form submit')
}
	     function reload()
	     {
	     var t = setTimeout ('refresh()',""" + str(int(self.args['AlertMonitorRefreshTime'])*1000) + """)
	     	   

	     }
	     function refresh()
	     {
	     window.location.href = \'""" + self.args['ComponentURL'] +"""\' 
	     
	     }
	     
	   </script>  

	   </head>
	  
	   <body onload=reload()>
           <a href="""+ self.args['BaseURL']+""">Home</a>
           <h4>Select Component:
          <form name="components" action='""" +self.args['ComponentURL']+"""' target='_self' >
<select name="component" size="1" onChange=components.submit()>"""
           components.append('ALL') 
           for component in components: 
                 
               html+= "<option value=" +component
               if self.args['component'] == component:
                   html+=" selected"  
               html+= ">"+ component+" </option>"

           html += """

</select></h4>
 
</form> 
 
           <center><h4>Component: """ +self.args['component']+ """</h4></center> 
           <table border=5 width = 90%  align = center>
<tr ><td colspan=11 bgcolor=#8888CC align=center><font color=black>AlertMonitor</font></td></tr>

<tr><td  bgcolor='white' align=center colspan=5>CurrentAlerts</td>
<td bgcolor=#EEEEFF>&nbsp;</td>
<td   bgcolor=white colspan=5 align=center>Alert History</td>


</tr>
<tr>
<td  colspan=5><div><object style="overflow-x:hidden; width:100%; height:400;" type=text/html data='"""+self.args['ComponentURL']+"""/currentalert?component="""+self.args['component']+"""'></object></div></td>
<td bgcolor=#EEEEFF>
<td  colspan=5></div><object style="overflow-x:hidden; width:100%; height:400;" type=text/html data='"""+self.args['ComponentURL']+"""/historyalert?component="""+self.args['component']+"""'></object></div></td>


</tr>



</table>


              

           """ 

           return html