def __init__(self, parse_commandline=True): # Initialize the parser self.parser = init_parser() # Update config with command line options logger.setup_logging(config.log) self.logger = logging.getLogger('synapse') self.transport = None self.daemon = SynapseDaemon(config.paths['pid']) try: cli_args = sys.argv[1:] if parse_commandline else [] options, args = self.parser.parse_args(cli_args) loglevel = config.log['level'] if options.verbose: loglevel = 'DEBUG' self.setup_logger(loglevel.upper()) self.parse_commandline(options, args) # Daemonize process ? if options.daemonize: self.daemon.set_transport(self.transport) self.daemon.start() else: Dispatcher(self.transport).dispatch() except Exception as err: self.logger.error(err) if options.trace: self.logger.error('{0}'.format(traceback.format_exc())) sys.exit(-1)
def __init__(self, parse_commandline=True): # Initialize the parser self.parser = init_parser() # Update config with command line options logger.setup_logging(config.log) self.logger = logging.getLogger('synapse') self.transport = None self.daemon = SynapseDaemon(config.paths['pid']) try: cli_args = sys.argv[1:] if parse_commandline else [] options, args = self.parser.parse_args(cli_args) self.parse_commandline(options, args) # Daemonize process ? if options.daemonize: self.daemon.set_transport(self.transport) self.daemon.start() else: Dispatcher(self.transport).dispatch() except Exception as err: self.logger.error(err) if options.trace: self.logger.error('{0}'.format(traceback.format_exc())) sys.exit(-1)