64c498776cfacee28f5a149e0638fdf4e7b3210d
[monitor.git] / findall.py
1 #!/usr/bin/python 
2
3 from monitor import parser as parsermodule
4 from findbad import main as findbad_main
5 from findbadpcu import main as findbadpcu_main
6 from sitebad import main as sitebad_main
7 from nodebad import main as nodebad_main
8 from pcubad import main as pcubad_main
9 from monitor.wrapper import plccache
10 import sys
11
12 if __name__ == '__main__':
13
14         parser = parsermodule.getParser(['nodesets'])
15
16         parser.set_defaults( increment=False, dbname="findbad", cachenodes=False, 
17                                                 force=False, pcuselect=None, pcuid=None, pcu=None)
18         parser.add_option("", "--cachenodes", action="store_true",
19                                                 help="Cache node lookup from PLC")
20         parser.add_option("", "--dbname", dest="dbname", metavar="FILE", 
21                                                 help="Specify the name of the database to which the information is saved")
22         parser.add_option("-i", "--increment", action="store_true", dest="increment", 
23                                                 help="Increment round number to force refresh or retry")
24         parser.add_option("", "--force", action="store_true", dest="force", 
25                                                 help="Force probe without incrementing global 'round'.")
26
27         parser = parsermodule.getParser(['defaults'], parser)
28         
29         cfg = parsermodule.parse_args(parser)
30
31         try:
32                 print "sync with plc"
33                 plccache.sync()
34                 print "findbad"
35                 findbad_main()
36                 print "findbadpcu"
37                 findbadpcu_main()
38                 print "nodebad"
39                 nodebad_main()
40                 print "pcubad"
41                 pcubad_main()
42                 print "sitebad"
43                 sitebad_main()
44         except Exception, err:
45                 import traceback
46                 print traceback.print_exc()
47                 print "Exception: %s" % err
48                 print "Saving data... exitting."
49                 sys.exit(0)