import logging logging.basicConfig(level=logging.DEBUG) import saucepan as sauce @sauce.pan.route('/<name>') def handle_hello(ctx, name=None): ctx.response.status_message="ACK!" return "Hello {0:s} !".format(name) sauce.run(port=8081)
# default route (ROUTE_ALWAYS == None == always match) @sauce.pan.route(sauce.ROUTE_ALWAYS) def default_route(ctx): return "Hello. This is default handler !" # -------------------------------------------------------------------- # register exception handler (like route ^_^) @sauce.pan.handle_exception(Exception) def handle_exception1(ctx, err): print "Exception handler HIT !! : ", ctx, err import traceback import sys info = sys.exc_info() traceback.print_exception(*info) # <- send logs to admin ;-) return "Exception handled, do not panic !!!" # -------------------------------------------------------------------- # register exception handler (like route ^_^) @sauce.pan.hook(sauce.HOOK_POST, arg=2) def post_hook_1(ctx, arg): ctx.response.headers['x-hooked-value'] = arg if __name__ == '__main__': sauce.run(host='0.0.0.0', port=12345) else: application = sauce.wsgi_interface()