我们从Python开源项目中,提取了以下11个代码示例,用于说明如何使用oslo_log.log.DEBUG。
def _wait_for_exit_or_signal(self, ready_callback=None): status = None signo = 0 LOG.debug('Full set of CONF:') CONF.log_opt_values(LOG, logging.DEBUG) try: if ready_callback: ready_callback() super(ServiceLauncher, self).wait() except SignalExit as exc: signame = _signo_to_signame(exc.signo) LOG.info(_LI('Caught %s, exiting'), signame) status = exc.code signo = exc.signo except SystemExit as exc: status = exc.code finally: self.stop() return status, signo
def main(): zun_service.prepare_service(sys.argv) LOG.info('Starting server in PID %s', os.getpid()) CONF.log_opt_values(LOG, logging.DEBUG) CONF.import_opt('topic', 'zun.conf.compute', group='compute') endpoints = [ compute_manager.Manager(), ] server = rpc_service.Service.create(CONF.compute.topic, CONF.host, endpoints, binary='zun-compute') launcher = service.launch(CONF, server) launcher.wait()
def wait(self): """Loop waiting on children to die and respawning as necessary.""" systemd.notify_once() LOG.debug('Full set of CONF:') CONF.log_opt_values(LOG, logging.DEBUG) try: while True: self.handle_signal() self._respawn_children() # No signal means that stop was called. Don't clean up here. if not self.sigcaught: return signame = _signo_to_signame(self.sigcaught) LOG.info(_LI('Caught %s, stopping children'), signame) if not _is_sighup_and_daemon(self.sigcaught): break cfg.CONF.reload_config_files() for service in set( [wrap.service for wrap in self.children.values()]): service.reset() for pid in self.children: os.kill(pid, signal.SIGHUP) self.running = True self.sigcaught = None except eventlet.greenlet.GreenletExit: LOG.info(_LI("Wait called after thread killed. Cleaning up.")) self.stop()
def main(): service.prepare_service(sys.argv) cfg.CONF.log_opt_values(LOG, logging.DEBUG) # Set source of model files service_list = particle_generator.get_service_list() LOG.info("Service List: %s" % service_list) LOG.info("Generating DB Classes") particle_generator.build_sql_models(service_list) # API is generated during the setup_app phase. LOG.info("Generating API Classes") app = api_app.setup_app() # Create the WSGI server and start it host, port = cfg.CONF.api.host, cfg.CONF.api.port srv = simple_server.make_server(host, port, app) LOG.info('Starting server in PID %s' % os.getpid()) LOG.debug("Configuration:") if host == '0.0.0.0': LOG.info(('serving on 0.0.0.0:%(port)s, ' 'view at http://127.0.0.1:%(port)s') % dict(port=port)) else: LOG.info('serving on http://%(host)s:%(port)s' % dict(host=host, port=port)) start_sync_thread(etcd_host=cfg.CONF.api.etcd_host, etcd_port=cfg.CONF.api.etcd_port) srv.serve_forever()
def log_rule_list(match_rule): if LOG.isEnabledFor(logging.DEBUG): rules = _process_rules_list([], match_rule) LOG.debug("Enforcing rules: %s", rules)
def init_application(): # Initialize the oslo configuration library and logging service.prepare_service(sys.argv) profiler.setup('zun-api', CONF.host) LOG.debug("Configuration:") CONF.log_opt_values(LOG, log.DEBUG) return app.load_app()
def setup_logging(name, level): logging.setup(CONF, name) LOG = logging.getLogger(None) if level == 'INFO': LOG.logger.setLevel(logging.INFO) if level == 'DEBUG': LOG.logger.setLevel(logging.DEBUG) if level == 'WARNING': LOG.logger.setLevel(logging.WARNING) if level == 'ERROR': LOG.logger.setLevel(logging.ERROR)
def _setup_logging(self, debug): # Output the logs to command-line interface color_handler = handlers.ColorHandler(sys.stdout) logger_root = logging.getLogger(None).logger logger_root.level = logging.DEBUG if debug else logging.WARNING logger_root.addHandler(color_handler) # Set the logger level of special library logging.getLogger('iso8601') \ .logger.setLevel(logging.WARNING) logging.getLogger('urllib3.connectionpool') \ .logger.setLevel(logging.WARNING)
def _debug_log_for_routes(self, msg, routes, bgp_speaker_id): # Could have a large number of routes passed, check log level first if LOG.isEnabledFor(logging.DEBUG): for route in routes: LOG.debug(msg, route, bgp_speaker_id)
def _get_connection(self): """Context manager providing a netmiko SSH connection object. This function hides the complexities of gracefully handling retrying failed connection attempts. """ retry_exc_types = (paramiko.SSHException, EOFError) # Use tenacity to handle retrying. @tenacity.retry( # Log a message after each failed attempt. after=tenacity.after_log(LOG, logging.DEBUG), # Reraise exceptions if our final attempt fails. reraise=True, # Retry on SSH connection errors. retry=tenacity.retry_if_exception_type(retry_exc_types), # Stop after the configured timeout. stop=tenacity.stop_after_delay( int(self.ngs_config['ngs_ssh_connect_timeout'])), # Wait for the configured interval between attempts. wait=tenacity.wait_fixed( int(self.ngs_config['ngs_ssh_connect_interval'])), ) def _create_connection(): return netmiko.ConnectHandler(**self.config) # First, create a connection. try: net_connect = _create_connection() except tenacity.RetryError as e: LOG.error("Reached maximum SSH connection attempts, not retrying") raise exc.GenericSwitchNetmikoConnectError( config=device_utils.sanitise_config(self.config), error=e) except Exception as e: LOG.error("Unexpected exception during SSH connection") raise exc.GenericSwitchNetmikoConnectError( config=device_utils.sanitise_config(self.config), error=e) # Now yield the connection to the caller. with net_connect: yield net_connect
def load_paste_app(app_name, flavor=None, conf_file=None): """Builds and returns a WSGI app from a paste config file. We assume the last config file specified in the supplied ConfigOpts object is the paste config file, if conf_file is None. :param app_name: name of the application to load :param flavor: name of the variant of the application to load :param conf_file: path to the paste config file :raises: RuntimeError when config file cannot be located or application cannot be loaded from config file """ # append the deployment flavor to the application name, # in order to identify the appropriate paste pipeline app_name += _get_deployment_flavor(flavor) if not conf_file: conf_file = _get_deployment_config_file() logger = logging.getLogger(__name__) try: logger.debug("Loading %(app_name)s from %(conf_file)s", {'conf_file': conf_file, 'app_name': app_name}) app = deploy.loadapp("config:%s" % conf_file, name=app_name) # Log the options used when starting if we're in debug mode... if CONF.debug: CONF.log_opt_values(logger, logging.DEBUG) return app except (LookupError, ImportError) as e: msg = (_("Unable to load %(app_name)s from " "configuration file %(conf_file)s." "\nGot: %(e)r") % {'app_name': app_name, 'conf_file': conf_file, 'e': e}) logger.error(msg) raise RuntimeError(msg)