diff options
-rw-r--r-- | libpathod/pathod.py | 8 | ||||
-rwxr-xr-x | pathod | 21 |
2 files changed, 18 insertions, 11 deletions
diff --git a/libpathod/pathod.py b/libpathod/pathod.py index 78ce3b95..1c53d7d7 100644 --- a/libpathod/pathod.py +++ b/libpathod/pathod.py @@ -2,6 +2,8 @@ import urllib, threading, re, logging, socket, sys from netlib import tcp, http, odict, wsgi import version, app, rparse +logger = logging.getLogger('pathod') + class PathodError(Exception): pass @@ -10,7 +12,7 @@ class PathodHandler(tcp.BaseHandler): wbufsize = 0 sni = None def info(self, s): - logging.info("%s:%s: %s"%(self.client_address[0], self.client_address[1], str(s))) + logger.info("%s:%s: %s"%(self.client_address[0], self.client_address[1], str(s))) def handle_sni(self, connection): self.sni = connection.get_servername() @@ -89,13 +91,13 @@ class PathodHandler(tcp.BaseHandler): for i in self.server.anchors: if i[0].match(path): - self.info("Serving anchor: %s"%path) + self.info("crafting anchor: %s"%path) aresp = rparse.parse_response(self.server.request_settings, i[1]) return self.serve_crafted(aresp, request_log) if not self.server.nocraft and path.startswith(self.server.craftanchor): spec = urllib.unquote(path)[len(self.server.craftanchor):] - self.info("Serving spec: %s"%spec) + self.info("crafting spec: %s"%spec) try: crafted = rparse.parse_response(self.server.request_settings, spec) except rparse.ParseException, v: @@ -3,6 +3,7 @@ import argparse, sys, logging, logging.handlers import os from libpathod import pathod, utils, version, rparse + def daemonize (stdin='/dev/null', stdout='/dev/null', stderr='/dev/null'): try: pid = os.fork() @@ -53,17 +54,21 @@ def main(parser, args): if root.handlers: for handler in root.handlers: root.removeHandler(handler) - logging.basicConfig( - format='%(asctime)s: %(message)s', + + log = logging.getLogger('pathod') + log.setLevel(logging.DEBUG) + fmt = logging.Formatter( + '%(asctime)s: %(message)s', datefmt='%d-%m-%y %I:%M:%S', - level=logging.DEBUG ) - if not args.debug: - logging.disable(logging.DEBUG) if args.logfile: - ch = logging.handlers.WatchedFileHandler(args.logfile) - root.addHandler(ch) - + fh = logging.handlers.WatchedFileHandler(args.logfile) + fh.setFormatter(fmt) + log.addHandler(fh) + if not args.daemonize: + sh = logging.StreamHandler() + sh.setFormatter(fmt) + log.addHandler(sh) sizelimit = None if args.sizelimit: |