diff options
Diffstat (limited to 'rpki/rtr')
-rwxr-xr-x | rpki/rtr/bgpdump.py | 6 | ||||
-rw-r--r-- | rpki/rtr/client.py | 2 | ||||
-rw-r--r-- | rpki/rtr/generator.py | 4 | ||||
-rw-r--r-- | rpki/rtr/main.py | 49 | ||||
-rw-r--r-- | rpki/rtr/server.py | 4 |
5 files changed, 15 insertions, 50 deletions
diff --git a/rpki/rtr/bgpdump.py b/rpki/rtr/bgpdump.py index 3ed2376a..22ac0d83 100755 --- a/rpki/rtr/bgpdump.py +++ b/rpki/rtr/bgpdump.py @@ -319,15 +319,15 @@ def argparse_setup(subparsers): subparser = subparsers.add_parser("bgpdump-convert", description = bgpdump_convert_main.__doc__, help = "Convert bgpdump to fake ROAs") - subparser.set_defaults(func = bgpdump_convert_main, default_log_to = "syslog") + subparser.set_defaults(func = bgpdump_convert_main, default_log_destination = "syslog") subparser.add_argument("files", nargs = "+", help = "input files") subparser = subparsers.add_parser("bgpdump-select", description = bgpdump_select_main.__doc__, help = "Set current serial number for fake ROA data") - subparser.set_defaults(func = bgpdump_select_main, default_log_to = "syslog") + subparser.set_defaults(func = bgpdump_select_main, default_log_destination = "syslog") subparser.add_argument("ax_file", help = "name of the .ax to select") subparser = subparsers.add_parser("bgpdump-server", description = bgpdump_server_main.__doc__, help = "Replay fake ROAs generated from historical data") - subparser.set_defaults(func = bgpdump_server_main, default_log_to = "syslog") + subparser.set_defaults(func = bgpdump_server_main, default_log_destination = "syslog") subparser.add_argument("rpki_rtr_dir", nargs = "?", help = "directory containing RPKI-RTR database") diff --git a/rpki/rtr/client.py b/rpki/rtr/client.py index 9c7a00d6..a8348087 100644 --- a/rpki/rtr/client.py +++ b/rpki/rtr/client.py @@ -522,7 +522,7 @@ def argparse_setup(subparsers): subparser = subparsers.add_parser("client", description = client_main.__doc__, help = "Test client for RPKI-RTR protocol") - subparser.set_defaults(func = client_main, default_log_to = "stderr") + subparser.set_defaults(func = client_main, default_log_destination = "stderr") subparser.add_argument("--sql-database", help = "filename for sqlite3 database of client state") subparser.add_argument("--force-version", type = int, choices = PDU.version_map, help = "force specific protocol version") subparser.add_argument("--reset-session", action = "store_true", help = "reset any existing session found in sqlite3 database") diff --git a/rpki/rtr/generator.py b/rpki/rtr/generator.py index a52b5de4..4536de30 100644 --- a/rpki/rtr/generator.py +++ b/rpki/rtr/generator.py @@ -575,7 +575,7 @@ def argparse_setup(subparsers): subparser = subparsers.add_parser("cronjob", description = cronjob_main.__doc__, help = "Generate RPKI-RTR database from rcynic output") - subparser.set_defaults(func = cronjob_main, default_log_to = "syslog") + subparser.set_defaults(func = cronjob_main, default_log_destination = "syslog") subparser.add_argument("--scan-roas", help = "specify an external scan_roas program") subparser.add_argument("--scan-routercerts", help = "specify an external scan_routercerts program") subparser.add_argument("--force_zero_nonce", action = "store_true", help = "force nonce value of zero") @@ -584,5 +584,5 @@ def argparse_setup(subparsers): subparser = subparsers.add_parser("show", description = show_main.__doc__, help = "Display content of RPKI-RTR database") - subparser.set_defaults(func = show_main, default_log_to = "stderr") + subparser.set_defaults(func = show_main, default_log_destination = "stderr") subparser.add_argument("rpki_rtr_dir", nargs = "?", help = "directory containing RPKI-RTR database") diff --git a/rpki/rtr/main.py b/rpki/rtr/main.py index 34f5598d..b915f809 100644 --- a/rpki/rtr/main.py +++ b/rpki/rtr/main.py @@ -25,28 +25,9 @@ import os import sys import time import logging -import logging.handlers -import argparse +import rpki.config -class Formatter(logging.Formatter): - - converter = time.gmtime - - def __init__(self, debug, fmt, datefmt): - self.debug = debug - super(Formatter, self).__init__(fmt, datefmt) - - def format(self, record): - if getattr(record, "connection", None) is None: - record.connection = "" - return super(Formatter, self).format(record) - - def formatException(self, ei): - if self.debug: - return super(Formatter, self).formatException(ei) - else: - return str(ei[1]) def main(): @@ -63,32 +44,16 @@ def main(): def argparse_setup_bgpdump(ignored): pass - argparser = argparse.ArgumentParser(description = __doc__) - argparser.add_argument("--debug", action = "store_true", help = "debugging mode") - argparser.add_argument("--log-level", default = "debug", - choices = ("debug", "info", "warning", "error", "critical"), - type = lambda s: s.lower()) - argparser.add_argument("--log-to", - choices = ("syslog", "stderr")) - subparsers = argparser.add_subparsers(title = "Commands", metavar = "", dest = "mode") + cfg = rpki.config.argparser(section = "rpki-rtr", doc = __doc__) + cfg.argparser.add_argument("--debug", action = "store_true", help = "debugging mode") + cfg.add_logging_arguments() + subparsers = cfg.argparser.add_subparsers(title = "Commands", metavar = "", dest = "mode") argparse_setup_server(subparsers) argparse_setup_client(subparsers) argparse_setup_generator(subparsers) argparse_setup_bgpdump(subparsers) - args = argparser.parse_args() - - fmt = "rpki-rtr/" + args.mode + "%(connection)s[%(process)d] %(message)s" - - if (args.log_to or args.default_log_to) == "stderr": - handler = logging.StreamHandler() - fmt = "%(asctime)s " + fmt - elif os.path.exists("/dev/log"): - handler = logging.handlers.SysLogHandler("/dev/log") - else: - handler = logging.handlers.SysLogHandler() + args = cfg.argparser.parse_args() - handler.setFormatter(Formatter(args.debug, fmt, "%Y-%m-%dT%H:%M:%SZ")) - logging.root.addHandler(handler) - logging.root.setLevel(int(getattr(logging, args.log_level.upper()))) + cfg.configure_logging(args = args, ident = "rpki-rtr/" + args.mode) return args.func(args) diff --git a/rpki/rtr/server.py b/rpki/rtr/server.py index afaf0e9c..c08320fc 100644 --- a/rpki/rtr/server.py +++ b/rpki/rtr/server.py @@ -578,7 +578,7 @@ def argparse_setup(subparsers): subparser = subparsers.add_parser("server", description = server_main.__doc__, help = "RPKI-RTR protocol server") - subparser.set_defaults(func = server_main, default_log_to = "syslog") + subparser.set_defaults(func = server_main, default_log_destination = "syslog") subparser.add_argument("--refresh", type = refresh, help = "override default refresh timer") subparser.add_argument("--retry", type = retry, help = "override default retry timer") subparser.add_argument("--expire", type = expire, help = "override default expire timer") @@ -586,7 +586,7 @@ def argparse_setup(subparsers): subparser = subparsers.add_parser("listener", description = listener_main.__doc__, help = "TCP listener for RPKI-RTR protocol server") - subparser.set_defaults(func = listener_main, default_log_to = "syslog") + subparser.set_defaults(func = listener_main, default_log_destination = "syslog") subparser.add_argument("--refresh", type = refresh, help = "override default refresh timer") subparser.add_argument("--retry", type = retry, help = "override default retry timer") subparser.add_argument("--expire", type = expire, help = "override default expire timer") |