<!doctype linuxdoc system>

<!-- Welcome in the SGML world -->

 <article>
  
   <title>The mon CGI manual
   <author><url 
      name="Gilles Lamiral" 
      url="mailto:lamiral@mail.dotcom.fr">
   <date>v0.2, 12 November 1998
    
   <abstract>
    This document describes the mon html user interface
    <em>minotaur.cgi</em>.
   </abstract>

  <toc>
  <sect>Principles
   <p>
    The mon sofware is a general scheduler executing periodic tests on
    a set of services and triggers alarms when a problem occurs.

    The scheduler can be consulted upon a simple textual protocol on a
    predefined port.

    The interface is based on this protocol. The CGI script (Common
    Gateway Interface) consults the scheduler and presents the results
    on a HTML way.

    To understand the web interface, you need to think about the
    followind hierarchy:
    
    <itemize>
     <item>The scheduler supervizes  groups. 
      
      <p><item>Groups are made up with items.
      
      <p><item>Those items can be hosts presented by their name or
      their IP adress, or everything else, directories for example.
      
      <p><item>Upon each items group, the scheduler supervizes one or
      more services.

      <p><item>With each service, the scheduler can trigger one or
      more alarms.

    </itemize>
    
   <sect>General presentation
    <p>
     <itemize>
      <item>A configuration table called ``Preference''.
       
      <p><item>A status table called ``Status''.

      <p><item>An aliases table called ``Aliases''
      
      <p><item>An historic table called ``Historic''.

      <p><item>A link bar upon each table.

     </itemize>
  

   <sect>The  preference table
    <p>
      <figure>
      <eps file="./preferences-en.jpg">
       <img src="./preferences-en.jpg">
       <caption>The configuration</caption>
      </figure>
   

    With the <bf>refresh</bf> popup you select the time refresh time
    of the whole page.

    With the <bf>language</bf> popup you select the user interface
    language.

    With the checkboxes named ``<bf>Status</bf>'',
    ``<bf>Historic</bf>'', ``<bf>Aliases</bf>'', you select the table
    you want to see.

   
  <sect>The status table
   <p>
    <figure>
     <eps file="./status-en.jpg">
     <img src="./status-en.jpg">
     <caption>The status table</caption>
    </figure>
    
    <descrip>
     
     <tag/The host colomn./ This colomn contains the list of all
     hosts. The disabled hosts are selected. You can select or
     deselect some hosts but it won't do anything. The disable
     mechanism is not yet coded.
     
     <tag/The ``group'' colomn./ The group colomn just names the group.

     <tag/The ``Members'' colomn./ The members colomn contains the
     group host lists, one in each cell, one for each ``group'' colomn
     cell.
     
     <tag/The ``Service'' colomn./ The service colomn just names the
     services. There can be several services for each group.
     
     <tag/The ``Last at'' and ``Next in'' colomn./ The ``Last at''
     colomn tells you when the last test was done. The ``Next in''
     colomn tells you the waiting time untill the next test.

     <tag/The ``Status'' colomn./ The status colomn gives the service
     status, one cell for each service. If the tests were good then
     you see the string "succeeded" alone. Else, you see the string
     "failed" followed by an summary information, typically the host
     that failed the tests.
      
     <tag/Color legend./
      <itemize>

       <item>When everything is good the services are not colored.
	
	<p><item>When a service is ``down'' the service and its group
	are red.  The up-brother services (in the same group) are
	green.
     
	<p><item>When a service is not yet tested, at the mon reset or
	starting, it is yellow.
     
	<p><item>When a service is disabled (none alarm is triggered),
	it is blue.
     
	<p><item>The sorting rule to present the groups is : red,
	blue, yellow, alphanumeric.

	<p><item>The sorting rule to present services in a group is :
	red, blue, yellow, alphanumeric.
       
      </itemize>
    </descrip>


  <sect> The aliases table
   <p>
    
    
    <figure>
     <eps file="./aliasEmpty-en.jpg">
     <img src="./aliasEmpty-en.jpg">
     <caption>The empty aliases table</caption>
    </figure>
    
    By default, the aliases table lists the aliases in the first
    colomn but does not detail each alias.

    <figure>
     <eps file="./aliasMore-en.jpg">
     <img src="./aliasMore-en.jpg">
     <caption>The non-empty aliases table</caption>
    </figure>
    
    To see the alias details, just select it in the <bf>List</bf>
    colomn and click on a <bf>submit</bf> button. You can do a multiple
    selection.


    <figure>
     <eps file="./aliasFull-en.jpg">
     <img src="./aliasFull-en.jpg">
     <caption>The full aliases table</caption>
    </figure>

    To see all the aliases, just select the <bf>all</bf> radio button
    and click on  a <bf>submit</bf> button.
    

  <sect> The historic table
   <p>
    
    <figure>
     <eps file="./historic-en.jpg">
     <img src="./historic-en.jpg">
     <caption>The historic table</caption>
    </figure>

    In red, the alerts. In green, the upalerts.

    You choose the number of line you want to see with the <bf>Nb
    lines</bf> textfield. You filter the last evenments with the
    <bf>Filter</bf> popup. The last alerts within the interval are
    displayed with a broken blank background.

</article>

