예제 #1
0
 def test_log_format_overrides_formatter(self):
     self.CONF(['--log-format', '[Any format]'])
     log._setup_logging_from_conf(self.CONF, 'test', 'test')
     logger = log._loggers[None].logger
     for handler in logger.handlers:
         formatter = handler.formatter
         self.assertTrue(isinstance(formatter, logging.Formatter))
예제 #2
0
 def test_default_formatter(self):
     log._setup_logging_from_conf(self.CONF, 'test', 'test')
     logger = log._loggers[None].logger
     for handler in logger.handlers:
         formatter = handler.formatter
         self.assertTrue(isinstance(formatter,
                                    formatters.ContextFormatter))
예제 #3
0
 def test_log_format_overrides_formatter(self):
     self.CONF(['--log-format', '[Any format]'])
     log._setup_logging_from_conf(self.CONF, 'test', 'test')
     logger = log._loggers[None].logger
     for handler in logger.handlers:
         formatter = handler.formatter
         self.assertTrue(isinstance(formatter, logging.Formatter))
 def test_default_formatter(self):
     log._setup_logging_from_conf(self.CONF, 'test', 'test')
     logger = log._loggers[None].logger
     for handler in logger.handlers:
         formatter = handler.formatter
         self.assertTrue(isinstance(formatter,
                                    formatters.ContextFormatter))
예제 #5
0
 def test_log_dir_handlers(self):
     log_dir = tempfile.mkdtemp()
     self.CONF(['--log-dir', log_dir])
     self.CONF.set_default('use_stderr', False)
     log._setup_logging_from_conf(self.CONF, 'test', 'test')
     logger = log._loggers[None].logger
     self.assertEqual(1, len(logger.handlers))
     self.assertIsInstance(logger.handlers[0],
                           logging.handlers.WatchedFileHandler)
예제 #6
0
 def test_handlers_cleanup(self):
     """Test that all old handlers get removed from log_root."""
     old_handlers = [log.handlers.ColorHandler(),
                     log.handlers.ColorHandler()]
     log._loggers[None].logger.handlers = list(old_handlers)
     log._setup_logging_from_conf(self.CONF, 'test', 'test')
     handlers = log._loggers[None].logger.handlers
     self.assertEqual(1, len(handlers))
     self.assertNotIn(handlers[0], old_handlers)
예제 #7
0
 def test_log_dir_handlers(self):
     log_dir = tempfile.mkdtemp()
     self.CONF(['--log-dir', log_dir])
     self.CONF.set_default('use_stderr', False)
     log._setup_logging_from_conf(self.CONF, 'test', 'test')
     logger = log._loggers[None].logger
     self.assertEqual(1, len(logger.handlers))
     self.assertIsInstance(logger.handlers[0],
                           logging.handlers.WatchedFileHandler)
 def test_handlers_cleanup(self):
     """Test that all old handlers get removed from log_root."""
     old_handlers = [log.handlers.ColorHandler(),
                     log.handlers.ColorHandler()]
     log._loggers[None].logger.handlers = list(old_handlers)
     log._setup_logging_from_conf(self.CONF, 'test', 'test')
     handlers = log._loggers[None].logger.handlers
     self.assertEqual(1, len(handlers))
     self.assertNotIn(handlers[0], old_handlers)
예제 #9
0
 def setUp(self):
     super(CommonLoggerTestsMixIn, self).setUp()
     # common context has different fields to the defaults in log.py
     self.config_fixture = self.useFixture(
         fixture_config.Config(cfg.ConfigOpts()))
     self.config = self.config_fixture.config
     self.CONF = self.config_fixture.conf
     log.register_options(self.config_fixture.conf)
     self.config(logging_context_format_string='%(asctime)s %(levelname)s '
                                               '%(name)s [%(request_id)s '
                                               '%(user)s %(tenant)s] '
                                               '%(message)s')
     self.log = None
     log._setup_logging_from_conf(self.config_fixture.conf, 'test', 'test')
예제 #10
0
 def setUp(self):
     super(CommonLoggerTestsMixIn, self).setUp()
     # common context has different fields to the defaults in log.py
     self.config_fixture = self.useFixture(
         fixture_config.Config(cfg.ConfigOpts()))
     self.config = self.config_fixture.config
     self.CONF = self.config_fixture.conf
     log.register_options(self.config_fixture.conf)
     self.config(logging_context_format_string='%(asctime)s %(levelname)s '
                 '%(name)s [%(request_id)s '
                 '%(user)s %(tenant)s] '
                 '%(message)s')
     self.log = None
     log._setup_logging_from_conf(self.config_fixture.conf, 'test', 'test')
예제 #11
0
 def test_log_publish_errors_handlers(self):
     fake_handler = mock.MagicMock()
     with mock.patch('oslo_utils.importutils.import_object',
                     return_value=fake_handler) as mock_import:
         log_dir = tempfile.mkdtemp()
         self.CONF(['--log-dir', log_dir])
         self.CONF.set_default('use_stderr', False)
         self.CONF.set_default('publish_errors', True)
         log._setup_logging_from_conf(self.CONF, 'test', 'test')
         logger = log._loggers[None].logger
         self.assertEqual(2, len(logger.handlers))
         self.assertIsInstance(logger.handlers[0],
                               logging.handlers.WatchedFileHandler)
         self.assertEqual(logger.handlers[1], fake_handler)
         mock_import.assert_called_once_with(
             'oslo_messaging.notify.log_handler.PublishErrorsHandler',
             logging.ERROR)
예제 #12
0
 def test_log_publish_errors_handlers(self):
     fake_handler = mock.MagicMock()
     with mock.patch('oslo_utils.importutils.import_object',
                     return_value=fake_handler) as mock_import:
         log_dir = tempfile.mkdtemp()
         self.CONF(['--log-dir', log_dir])
         self.CONF.set_default('use_stderr', False)
         self.CONF.set_default('publish_errors', True)
         log._setup_logging_from_conf(self.CONF, 'test', 'test')
         logger = log._loggers[None].logger
         self.assertEqual(2, len(logger.handlers))
         self.assertIsInstance(logger.handlers[0],
                               logging.handlers.WatchedFileHandler)
         self.assertEqual(logger.handlers[1], fake_handler)
         mock_import.assert_called_once_with(
             'oslo_messaging.notify.log_handler.PublishErrorsHandler',
             logging.ERROR)
예제 #13
0
    def test_mutate(self):
        conf = cfg.CONF
        old_config = ("[DEFAULT]\n"
                      "debug = false\n")
        new_config = ("[DEFAULT]\n"
                      "debug = true\n")
        paths = self.create_tempfiles([('old', old_config),
                                       ('new', new_config)])
        log.register_options(conf)
        conf(['--config-file', paths[0]])
        log_root = log.getLogger(None).logger

        log._setup_logging_from_conf(conf, 'test', 'test')
        self.assertEqual(conf.debug, False)

        self.assertEqual(conf.verbose, True)
        self.assertEqual(log.INFO, log_root.getEffectiveLevel())

        shutil.copy(paths[1], paths[0])
        conf.mutate_config_files()

        self.assertEqual(conf.debug, True)
        self.assertEqual(conf.verbose, True)
        self.assertEqual(log.DEBUG, log_root.getEffectiveLevel())