DefaultChecks
index

Some default checks that migth be usefull for clusters
Each check consists a setUp and a check function. The setUp has to be called in the init()-function, the check-function in analyse(). You can also use setUpAll()
 
downCheck:              checks if all nodes are up.
    If more nodes are down than 'tolerated' -> CRITICAL.
    If some, but less than 'tolerated', are down -> WARNING 
    If none is down -> OK
    Returns as PREFDATA number of down nodes
clusterLoadCheck:       checks the load of the cluster
    If advantage cluster load is higher than 'critical' -> CRITICAL
    If advantage cluster load is higher than 'longer' longer than history -> WARNING
    If advantage cluster load is higher than 'short' -> WARNING
    Returns as PREFDATA advantage cluster load
nodeLoadCheck:          check the load of the nodes
    Checks for all nodes if they are overloaded (see clusterLodeCheck for details)
    Collects the number of WARNINGS and ERRORS
    If number > 'tolerated' -> CRITICAL
    If number > 0 but < 'tolerated' -> WARNING
    Returns as PREFDATA number
clusterMemoryCheck:     checks the precent of usable memory (free,buffer,cache)
    If less than 'critical' memory is usable -> CRITICAL
    If less than 'short' memory is usable -> WARNING
    If less than 'longer' memory is usable for longer than history -> WARNING
    Returns as PREFDATA advantage usable memory
nodeMemoryCheck:        checks the precent of usable memory (free,buffer,cache) for all nodes
    Checks for all nodes if they have to few memory (see clusterMemoryCheck for details)
    Collects the number of WARNINGS and ERRORS
    If number > 'tolerated' -> CRITICAL
    If number > 0 but < 'tolerated' -> WARNING
    Returns as PREFDATA number
clusterCPUCheck:        checks percent of cpu used by system (wait and system cpu, can be a sign for swapping or wainting for broken systems)
    If advantage cluster system cpu is higher than 'critical' -> CRITICAL
    If advantage cluster system cpu is higher than 'longer' for longer than history -> WARNING
    If advantage cluster system cpu is higher than 'short' -> WARNING
    Returns as PREFDATA advantage system cpu
nodeCPUCheck:           checks percent of cpu used by system (wait and system cpu, can be a sign for swapping or wainting for broken systems) for each node
    Checks for all nodes if sys cpu is to high (see clusterCPUCheck for details)
    Collects the number of WARNINGS and ERRORS
    If number > 'tolerated' -> CRITICAL
    If number > 0 but < 'tolerated' -> WARNING
    Returns as PREFDATA number
clusterSwapTest:        checks if system is doing swapping
    If free swap < 'critical' -> CRITICAL
    If free swap < 'short' -> WARNING
    If free swap < 'longer' for longer than history -> WARNING
    Returns as PREFDATA free swap
nodeSwapTest:           checks if system is doing swapping for each node
    Checks for all nodes if swap to low (see clusterSwapCheck for details)
    Collects the number of WARNINGS and ERRORS
    If number > 'tolerated' -> CRITICAL
    If number > 0 but < 'tolerated' -> WARNING
    Returns as PREFDATA number
singleClusterTest:      checks a cluster. 
    Should not be combinated with other tests.
    Defines service clusterName

 
Modules
       
Plugins.Input.Gmond
HealthPluginManager
time

 
Functions
       
checkAll(clusterName, tolerated)
clusterCPUCheck(clusterName, critical=80, longer=20, short=35)
void clusterCPUCheck(name ClusterName, GnmondMetrics values,float critical, float longer, float short)
Does the clusterCPUCheck
Needs name of the cluster (the same as in ganglia),
the metrics (values),
and the border values critical,longer,short (see beginning comment for details)
Sets the nagios service clusterName_cpuCluster
clusterLoadCheck(clusterName, critical=500, longer=200, short=300)
void clusterLoadCheck(name ClusterName, GnmondMetrics values,float critical, float longer, float short)
Does the clusterLoadCheck
Needs name of the cluster (the same as in ganglia),
the metrics (values),
and the border values critical,longer,short (see beginning comment for details)
Sets the nagios service clusterName_loadCluster
clusterMemCheck(clusterName, critical=10, longer=30, short=20)
void clusterMemCheck(name ClusterName, GnmondMetrics values,float critical, float longer, float short)
Does the clusterMemCheck
Needs name of the cluster (the same as in ganglia),
the metrics (values),
and the border values critical,longer,short (see beginning comment for details)
Sets the nagios service clusterName_memoryCluster
clusterSwapCheck(clusterName, critical=50, longer=10, short=20)
void clusterSwapCheck(name ClusterName, GnmondMetrics values,float critical, float longer, float short)
Does the clusterSwapCheck
Needs name of the cluster (the same as in ganglia),
the metrics (values),
and the border values critical,longer,short (see beginning comment for details)
Sets the nagios service clusterName_swapCluster
downCheck(clusterName, tolerated)
void downCheck(name ClusterName, GnmondMetrics values,int tolerated)
Does the downCheck
Needs name of the cluster (the same as in ganglia),
the metrics (values),
and a number of hosts who are allowed to be down.
Sets the nagios service clusterName_down
nodeCPUCheck(clusterName, tolerated, critical=80, longer=20, short=35)
void nodeCPUCheck(name ClusterName, GnmondMetrics values,int tolerated,float critical, float longer, float short)
Does the nodesCPUCheck
Needs name of the cluster (the same as in ganglia),
the metrics (values),
a number of hosts who are allowed to spend to mutch time with system CPU
and the border values critical,longer,short (see beginning comment for details)
Sets the nagios service clusterName_cpuNodes
nodeLoadCheck(clusterName, tolerated, critical=500, longer=200, short=300)
void nodeLoadCheck(name ClusterName, GnmondMetrics values,int tolerated,float critical, float longer, float short)
Does the nodesLoadCheck
Needs name of the cluster (the same as in ganglia),
the metrics (values),
a number of hosts who are allowed to be overloaded
and the border values critical,longer,short (see beginning comment for details)
Sets the nagios service clusterName_loadNodes
nodeMemCheck(clusterName, tolerated, critical=10, longer=30, short=20)
void nodememCheck(name ClusterName, GnmondMetrics values,int tolerated,float critical, float longer, float short)
Does the nodesMemCheck
Needs name of the cluster (the same as in ganglia),
the metrics (values),
a number of hosts who are allowed to have to few memory
and the border values critical,longer,short (see beginning comment for details)
Sets the nagios service clusterName_memoryNodes
nodeSwapCheck(clusterName, tolerated, critical=50, longer=10, short=20)
void nodeSwapCheck(name ClusterName, GnmondMetrics values,int tolerated,float critical, float longer, float short)
Does the nodesSwapCheck
Needs name of the cluster (the same as in ganglia),
the metrics (values),
a number of hosts who are allowed to do swapping
and the border values critical,longer,short (see beginning comment for details)
Sets the nagios service clusterName_swapNodes
setUpAll(clusterName, history)
void setUpAll(string clusterName,list nodes, int history)
Sets up all default checks, thus definig nagios services and set up storage for values
Needs name of the cluster (the same as in ganglia),
a list of nodes in this cluster,
and a length of history. The time length of history is computed by history * maxExecutionTime
setUpClusterCPUCheck(clusterName, history)
void setUpClusterCPUCheck(string clusterName, int history)
Sets up  clusterCPUCheck.
Defines the nagios service clusterName_cpuCluster
Needs name of the cluster (the same as in ganglia),
and a length of history. The time length of history is computed by history * maxExecutionTime
setUpClusterLoadCheck(clusterName, history)
void setUpClusterLoadCheck(string clusterName, int history)
Sets up  clusterLoadCheck.
Defines the nagios service clusterName_loadCluster
Needs name of the cluster (the same as in ganglia),
and a length of history. The time length of history is computed by history * maxExecutionTime
setUpClusterMemCheck(clusterName, history)
void setUpClustermemCheck(string clusterName, int history)
Sets up  clusterMemCheck.
Defines the nagios service clusterName_memoryCluster
Needs name of the cluster (the same as in ganglia),
and a length of history. The time length of history is computed by history * maxExecutionTime
setUpClusterSwapCheck(clusterName, history)
void setUpClusterSwapCheck(string clusterName, int history)
Sets up  clusterSwapCheck.
Defines the nagios service clusterName_swapCluster
Needs name of the cluster (the same as in ganglia),
and a length of history. The time length of history is computed by history * maxExecutionTime
setUpDownCheck(clusterName)
void setUpDownCheck(string clusterName)
Sets up down checks.
Defines nagios service clusterName_down
Needs name of the cluster (the same as in ganglia),
setUpNodeCPUCheck(clusterName, history)
void setUpNodeCPUCheck(string clusterName, list nodes,int history)
Sets up  nodesCPUCheck.
Defines the nagios service clusterName_cpuNodes
Needs name of the cluster (the same as in ganglia),
a list of nodes in this cluster
and a length of history. The time length of history is computed by history * maxExecutionTime
setUpNodeLoadCheck(clusterName, history)
void setUpNodeLoadCheck(string clusterName, list nodes,int history)
Sets up  nodesLoadCheck.
Defines the nagios service clusterName_loadNodes
Needs name of the cluster (the same as in ganglia),
a list of nodes in this cluster
and a length of history. The time length of history is computed by history * maxExecutionTime
setUpNodeMemCheck(clusterName, history)
void setUpNodeMemCheck(string clusterName, list nodes,int history)
Sets up  nodesMemCheck.
Defines the nagios service clusterName_memoryNodes
Needs name of the cluster (the same as in ganglia),
a list of nodes in this cluster
and a length of history. The time length of history is computed by history * maxExecutionTime
setUpNodeSwapCheck(clusterName, history)
void setUpNodeSwapCheck(string clusterName, list nodes,int history)
Sets up  nodesSwapCheck.
Defines the nagios service clusterName_swapNodes
Needs name of the cluster (the same as in ganglia),
a list of nodes in this cluster
and a length of history. The time length of history is computed by history * maxExecutionTime
setUpSingleCheck(cluster, login_nodes, file_nodes, compute_nodes)
singleCheck(cluster)

 
Data
        NAGIOS_CRITICAL = 2
NAGIOS_OK = 0
NAGIOS_UNKNOW = 3
NAGIOS_WARNING = 1
allowedServers = []
plugin = 0