示例#1
0
 def test_rfc3339_timezone_wrong_directive(self):
     self.formatter = rlog.RFC3339Formatter(
         fmt='[%(asctime)s] %(levelname)s: %(check_name)s: %(message)s',
         datefmt='%FT%T:z')
     self.handler.setFormatter(self.formatter)
     self.logger_without_check.info('foo')
     assert self.found_in_logfile(':z')
示例#2
0
def test_logger_dynamic_attributes(logfile, logger_with_check):
    formatter = rlog.RFC3339Formatter('%(check_custom)s|%(check_custom_list)s|'
                                      '%(check_foo)s|%(check_custom_dict)s')
    logger_with_check.logger.handlers[0].setFormatter(formatter)
    logger_with_check.info('xxx')
    assert _pattern_in_logfile(
        r'hello extras\|custom,3.0,\["hello", "world"\]\|null\|'
        r'{"a": 1, "b": 2}', logfile)
示例#3
0
def test_logger_dynamic_attributes_deferrables(logfile, logger_with_check):
    formatter = rlog.RFC3339Formatter(
        '%(check_deferred)s|%(check_deferred_error)s')
    logger_with_check.logger.handlers[0].setFormatter(formatter)
    logger_with_check.info('xxx')
    assert _pattern_in_logfile(r'null\|null', logfile)

    # Evaluate the deferrable and log again
    logger_with_check.check.deferred.evaluate()
    logger_with_check.info('xxx')
    assert _pattern_in_logfile(r'"hello"\|null', logfile)
示例#4
0
 def test_rfc3339_timezone_extension(self):
     self.formatter = rlog.RFC3339Formatter(
         fmt=('[%(asctime)s] %(levelname)s: %(check_name)s: '
              'ct:%(check_job_completion_time)s: %(message)s'),
         datefmt='%FT%T%:z')
     self.handler.setFormatter(self.formatter)
     self.logger_with_check.info('foo')
     self.logger_without_check.info('foo')
     assert not self.found_in_logfile(r'%%:z')
     assert self.found_in_logfile(r'\[.+(\+|-)\d\d:\d\d\]')
     assert self.found_in_logfile(r'ct:.+(\+|-)\d\d:\d\d')
示例#5
0
    def setUp(self):
        tmpfd, self.logfile = tempfile.mkstemp()
        os.close(tmpfd)

        self.logger = rlog.Logger('reframe')
        self.handler = logging.handlers.RotatingFileHandler(self.logfile)
        self.formatter = rlog.RFC3339Formatter(
            fmt='[%(asctime)s] %(levelname)s: %(check_name)s: %(message)s',
            datefmt='%FT%T')

        self.handler.setFormatter(self.formatter)
        self.logger.addHandler(self.handler)

        # Use the logger adapter that defines check_name
        self.logger_without_check = rlog.LoggerAdapter(self.logger)

        # Logger adapter with an associated check
        self.logger_with_check = rlog.LoggerAdapter(self.logger,
                                                    _setup_fake_check())