Ignore empty 'portstatus' dicts. This just means the ports are down.
[monitor.git] / www / printbadnodes.py
index 671a9c6..95bddf4 100755 (executable)
@@ -258,6 +258,11 @@ def main(sitefilter):
        # d2 was an array of [{node}, {}, ...]
        # the bysite is a loginbase dict of [{node}, {node}]
        d2 = []
+       import re
+       if sitefilter != None:
+               sf = re.compile(sitefilter)
+       else:
+               sf = None
        for nodename in l_nodes: 
                vals=d_n[nodename]['values'] 
                v = {}
@@ -283,7 +288,7 @@ def main(sitefilter):
 
                v['site_string'] = site_string
                v['loginbase'] = loginbase
-               if (sitefilter != None and loginbase == sitefilter) or sitefilter == None:
+               if (sitefilter != None and sf.match(loginbase) != None) or sitefilter == None:
                        d2.append(v)
                        
 
@@ -392,21 +397,21 @@ def main(sitefilter):
                print "</tr>"
        print "</table>"
 
-import cgi
-import cgitb; 
-cgitb.enable()
-import sys
 
-form = cgi.FieldStorage()
-myfilter = None
 
-if form.has_key('site'):
-       myfilter = form.getvalue("site")
-else:
-       myfilter = None
+if __name__ == '__main__':
+       import cgi
+       import cgitb; 
+       cgitb.enable()
+       import sys
 
+       form = cgi.FieldStorage()
+       myfilter = None
 
-if __name__ == '__main__':
+       if form.has_key('site'):
+               myfilter = form.getvalue("site")
+       else:
+               myfilter = None
        parser = OptionParser()
        parser.set_defaults(cmpdays=False, 
                                                comon="sshstatus",