X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-web.git/blobdiff_plain/7f1e55f398d25ec110573104910c04cfede8e722..dbbf69f4561c352fe825f6c7b0a81912aab987c9:/templates/main.py?ds=sidebyside diff --git a/templates/main.py b/templates/main.py index 0bf16b9..e7412ba 100755 --- a/templates/main.py +++ b/templates/main.py @@ -35,12 +35,29 @@ if __name__ == '__main__': sys.path.append('/home/ecprice/.local/lib/python2.5/site-packages') +import templates from Cheetah.Template import Template from sipb_xen_database import Machine, CDROM, ctx, connect import validation from webcommon import InvalidInput, CodeError, g import controls +class Checkpoint: + def __init__(self): + self.start_time = time.time() + self.checkpoints = [] + + def checkpoint(self, s): + self.checkpoints.append((s, time.time())) + + def __str__(self): + return ('Timing info:\n%s\n' % + '\n'.join(['%s: %s' % (d, t - self.start_time) for + (d, t) in self.checkpoints])) + +checkpoint = Checkpoint() + + def helppopup(subj): """Return HTML code for a (?) link to a specified help topic""" return ('%s' % checkpoint except Exception, err: if not fields.has_key('js'): if isinstance(err, CodeError): @@ -585,7 +623,6 @@ def main(operation, user, fields): raise if __name__ == '__main__': - start_time = time.time() fields = cgi.FieldStorage() u = getUser() g.user = u @@ -600,5 +637,7 @@ if __name__ == '__main__': if not operation: operation = 'list' - main(operation, u, fields) + #main(operation, u, fields) + import profile + profile.run('main(operation, u, fields)', 'log-'+operation)