source: monitoring/plugins/mpi/check_lat_oai_endpoint.py

Last change on this file was 4062, checked in by sanmai, 11 years ago
  • Fix to reflect changes in interface of check_condition.
  • Property svn:executable set to *
File size: 2.2 KB
Line 
1#!/usr/bin/python2
2
3import generic_tla_monitoring
4import os, pdb
5
6
7special_plugin_description = "OAI-PMH endpoint"
8special_plugin_file_name = os.path.basename(__file__)
9OAI_namespace = "http://www.openarchives.org/OAI/2.0/"
10command_line_parameters = [("-s", "scheme"), 
11                           ("-h", "host",),
12                           ("-u", "http_path",),
13                           ("-p", "port_number",)]
14
15
16def special_main_subroutine(scheme, 
17                            host, 
18                            http_path,
19                            port_number) : 
20
21    http_paths = (http_path,) # X- use frozenset
22
23    ## Warning: check of validity of returned data relies on the XML namespace OAI_NAMESPACE of the returned XML markup.
24    valid_root_element_tag  = "{%s}OAI-PMH" % (OAI_namespace)
25   
26    ## Check status for all http_paths.
27    results = \
28        map(lambda http_path : generic_tla_monitoring.check_condition(host                      = host,
29                                                                      http_path                 = http_path,
30                                                                      HTTP_method               = 'GET',
31                                                                      protocol                  = scheme, 
32                                                                      port_number               = port_number,
33                                                                      authorize                 = True,
34                                                                      validator                 = generic_tla_monitoring.check_XML_validity,
35                                                                      valid_root_element_tag    = valid_root_element_tag,
36                                                                      special_plugin_file_name  = special_plugin_file_name),
37            http_paths)   
38   
39    generic_tla_monitoring.nagios_return_complex(results, 
40                                                 reporter = special_plugin_description)
41
42if __name__ == "__main__" :
43    generic_tla_monitoring.main(special_main_subroutine, 
44                                command_line_parameters)
Note: See TracBrowser for help on using the repository browser.