diff --git a/libra/common/options.py b/libra/common/options.py index 772d151a..eab7c240 100644 --- a/libra/common/options.py +++ b/libra/common/options.py @@ -134,14 +134,6 @@ class Options(object): ), help='log file to use (ignored with --nodaemon)' ) - self.parser.add_argument( - '--syslog', dest='syslog', action='store_true', - help='use syslog for logging output' - ) - self.parser.add_argument( - '--syslog-socket', dest='syslog_socket', - help='socket to use for syslog connection if UDP not supported' - ) self.parser.add_argument( '--user', dest='user', help='user to use for daemon mode' @@ -175,20 +167,7 @@ def setup_logging(name, args): '%(asctime)-6s: %(name)s - %(levelname)s - %(message)s' ) - # No timestamp, used with syslog - simple_formatter = logging.Formatter( - '%(name)s - %(levelname)s - %(message)s' - ) - - if args.syslog and not args.nodaemon: - if args.syslog_socket: - address = args.syslog_socket - else: - address = ('localhost', 514) - handler = logging.handlers.SysLogHandler(address=address, - facility="daemon") - handler.setFormatter(simple_formatter) - elif logfile: + if logfile: handler = logging.FileHandler(logfile) handler.setFormatter(ts_formatter) else: diff --git a/libra/mgm/mgm.py b/libra/mgm/mgm.py index 2697043c..eb4a8d4f 100644 --- a/libra/mgm/mgm.py +++ b/libra/mgm/mgm.py @@ -24,15 +24,11 @@ from libra.common.options import Options, setup_logging class Server(object): - def __init__(self, nodes): + def __init__(self, logger, nodes): + self.logger = logger self.nodes = nodes - def main(self, logger=None, args=None): - if logger: - self.logger = logger - else: - self.logger = setup_logging('libra_mgm', args) - + def main(self): self.logger.info( 'Libra Pool Manager started with a float of {nodes} nodes' .format(nodes=self.nodes) @@ -64,15 +60,16 @@ def main(): args = options.run() logger = setup_logging('libra_mgm', args) - server = Server(args.nodes) + server = Server(logger, args.nodes) if args.nodaemon: - server.main(logger=logger) + server.main() else: context = daemon.DaemonContext( working_directory='/etc/haproxy', umask=0o022, - pidfile=lockfile.FileLock(args.pid) + pidfile=lockfile.FileLock(args.pid), + files_preserve=[logger.handlers[0].stream] ) if args.user: try: @@ -87,6 +84,6 @@ def main(): logger.critical("Invalid group: %s" % args.group) return 1 with context: - server.main(args=args) + server.main() return 0 diff --git a/libra/worker/worker.py b/libra/worker/worker.py index 51e5bae3..9b2f1cc5 100644 --- a/libra/worker/worker.py +++ b/libra/worker/worker.py @@ -108,32 +108,16 @@ class Server(object): non-daemon mode. """ - def __init__(self, servers, reconnect_sleep): + def __init__(self, logger, servers, reconnect_sleep): + self.logger = logger self.driver = None self.servers = servers self.reconnect_sleep = reconnect_sleep - def main(self, logger=None, args=None): - """ - Main method of the server. - - `logger` - If given, will be used as the logging class. Otherwise, a new - logger will be retrieved. - - `args` - Only needed when `logger` is None. - """ + def main(self): + """ Main method of the server. """ my_ip = socket.gethostbyname(socket.gethostname()) task_name = "lbaas-%s" % my_ip - - if logger: - self.logger = logger - else: - # We need to setup logging here because if we are running - # as a daemon, then any open file handles will have been closed. - self.logger = setup_logging('libra_worker', args) - self.logger.debug("Registering task %s" % task_name) worker = CustomJSONGearmanWorker(self.servers) @@ -202,16 +186,17 @@ def main(): driver = driver_class() logger.debug("Job server list: %s" % args.server) - server = Server(args.server, args.reconnect_sleep) + server = Server(logger, args.server, args.reconnect_sleep) server.driver = driver if args.nodaemon: - server.main(logger=logger) + server.main() else: context = daemon.DaemonContext( working_directory='/etc/haproxy', umask=0o022, - pidfile=lockfile.FileLock(args.pid) + pidfile=lockfile.FileLock(args.pid), + files_preserve=[logger.handlers[0].stream] ) if args.user: try: @@ -227,6 +212,6 @@ def main(): return 1 with context: - server.main(args=args) + server.main() return 0