diff options
Diffstat (limited to 'project1/proj1_s4498062/webserver.py')
-rw-r--r-- | project1/proj1_s4498062/webserver.py | 102 |
1 files changed, 51 insertions, 51 deletions
diff --git a/project1/proj1_s4498062/webserver.py b/project1/proj1_s4498062/webserver.py index c01df4e..44152a0 100644 --- a/project1/proj1_s4498062/webserver.py +++ b/project1/proj1_s4498062/webserver.py @@ -1,51 +1,51 @@ -import argparse
-import logging
-import os.path
-import sys
-
-import webhttp.server
-import webhttp.weblogging
-
-# Create and start the HTTP Server
-# Use `python webserver.py --help` to display command line options
-if __name__ == '__main__':
- # Parse command line arguments
- parser = argparse.ArgumentParser(description="HTTP Server")
- parser.add_argument('-c', '--config', type=str, default='~/.webpy.ini',
- help='configuration file')
-
- parser.add_argument('-a', '--address', type=str, default=None,
- help='address to listen on (default localhost)')
- parser.add_argument('-p', '--port', type=int, default=None,
- help='port to listen on (no default)')
- parser.add_argument('-t', '--timeout', type=int, default=None,
- help='timeout for incoming connections (no default)')
-
- parser.add_argument('-l', '--log', type=str, default='info',
- help='log level (debug, info, warning, error, critical)')
- parser.add_argument('-lf', '--log-file', type=str, default=None,
- help='log file (default stdout)')
-
- args = parser.parse_args()
-
- # Logging
- fmt = '[%(asctime)s] %(levelname)s %(message)s'
- logging.basicConfig(format=fmt, level=getattr(logging, args.log.upper()))
- if args.log_file != None:
- logger = logging.getLogger(webhttp.weblogging.name)
- handler = logging.FileHandler(args.log_file)
- handler.setLevel(getattr(logging, args.log.upper()))
- logger.addHandler(handler)
-
- # Start server
- config = os.path.expanduser(os.path.expandvars(args.config))
- server = webhttp.server.Server(configfile=config,
- hostname=args.address, port=args.port, timeout=args.timeout)
- try:
- server.run()
- except KeyboardInterrupt:
- server.shutdown()
- print ("")
-
-
-
+import argparse +import logging +import os.path +import sys + +import webhttp.server +import webhttp.weblogging + +# Create and start the HTTP Server +# Use `python webserver.py --help` to display command line options +if __name__ == '__main__': + # Parse command line arguments + parser = argparse.ArgumentParser(description="HTTP Server") + parser.add_argument('-c', '--config', type=str, default='~/.webpy.ini', + help='configuration file') + + parser.add_argument('-a', '--address', type=str, default=None, + help='address to listen on (default localhost)') + parser.add_argument('-p', '--port', type=int, default=None, + help='port to listen on (no default)') + parser.add_argument('-t', '--timeout', type=int, default=None, + help='timeout for incoming connections (no default)') + + parser.add_argument('-l', '--log', type=str, default='info', + help='log level (debug, info, warning, error, critical)') + parser.add_argument('-lf', '--log-file', type=str, default=None, + help='log file (default stdout)') + + args = parser.parse_args() + + # Logging + fmt = '[%(asctime)s] %(levelname)s %(message)s' + logging.basicConfig(format=fmt, level=getattr(logging, args.log.upper())) + if args.log_file != None: + logger = logging.getLogger(webhttp.weblogging.name) + handler = logging.FileHandler(args.log_file) + handler.setLevel(getattr(logging, args.log.upper())) + logger.addHandler(handler) + + # Start server + config = os.path.expanduser(os.path.expandvars(args.config)) + server = webhttp.server.Server(configfile=config, + hostname=args.address, port=args.port, timeout=args.timeout) + try: + server.run() + except KeyboardInterrupt: + server.shutdown() + print ("") + + + |