summaryrefslogtreecommitdiff
path: root/pagehandler.py
diff options
context:
space:
mode:
Diffstat (limited to 'pagehandler.py')
-rwxr-xr-xpagehandler.py16
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