diff options
Diffstat (limited to 'pagehandler.py')
-rwxr-xr-x | pagehandler.py | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/pagehandler.py b/pagehandler.py index 0d772d6..3933fce 100755 --- a/pagehandler.py +++ b/pagehandler.py @@ -27,25 +27,35 @@ if __name__ == '__main__': os.environ['SCRIPT_FILENAME'] = sys.argv[0] from wsgiref import simple_server as ss import getopt + import profile, pstats def cmd_help(): print """ -usage: %s [-h] +usage: %s [-hp] -h: help message + -p: enable profiling """%(os.path.basename(sys.argv[0])) - opts,args = getopt.getopt(sys.argv[1:], "h") + opts,args = getopt.getopt(sys.argv[1:], "hp") + profiling = False for o,v in opts: if o == "-h": cmd_help() sys.exit(0) + if o == "-p": + profiling = True print "pagehandler test server running..." server = ss.WSGIServer( ('',8080), ss.WSGIRequestHandler) server.set_app(application) while True: try: - server.handle_request() + if not profiling: + server.handle_request() + else: + profile.run("server.handle_request()", "profile.out") + p = pstats.Stats("profile.out") + p.strip_dirs().sort_stats('time').print_stats(20) except IOError, e: print "adsf: ",e |