Ejemplo n.º 1
0
def loggerInit():
    pylog.reset()
    layout = pylog.ColorLayout(True, 'ABSOLUTE')
    appenderConsole = pylog.ConsoleAppender(layout)
    appenderConsole.setOption("target", pylog.ConsoleAppender.getSystemErr())
    appenderConsole.activateOptions()
    logger = pylog.get_root()
    logger.addAppender(appenderConsole)
Ejemplo n.º 2
0
def init_logger():
    layout = pylogging.ColorLayout(True)
    appender = pylogging.ConsoleAppender(layout)
    appender.setOption("target", pylogging.ConsoleAppender.getSystemErr())
    appender.activateOptions(pylogging.Pool())

    l = pylogging.get_root()
    pylogging.set_loglevel(l, pylogging.LogLevel.DEBUG)
    l.addAppender(appender)
Ejemplo n.º 3
0
def loggerSetLevel(loglevel):
    # compatibility to old log levels
    assert loglevel < 5, 'invalid log level'
    logLevelList = [
        pylog.LogLevel.ERROR, pylog.LogLevel.WARN, pylog.LogLevel.INFO,
        pylog.LogLevel.DEBUG, pylog.LogLevel.TRACE
    ]
    logger = pylog.get_root()
    pylog.set_loglevel(logger, logLevelList[loglevel])
Ejemplo n.º 4
0
    def test_reset(self):
        logger.log_to_cout(logger.LogLevel.WARN)
        logger1 = logger.get("test")
        logger2 = logger.get("xyz")

        logger.reset()

        self.assertEqual(0, logger1._get_number_of_appenders())
        self.assertEqual(0, logger2._get_number_of_appenders())
        self.assertEqual(0, logger.get_root()._get_number_of_appenders())
Ejemplo n.º 5
0
    def test_reset(self):
        logger.log_to_cout(logger.LogLevel.WARN)
        logger1 = logger.get("test");
        logger2 = logger.get("xyz");

        logger.reset()

        self.assertEqual(0, logger1._get_number_of_appenders())
        self.assertEqual(0, logger2._get_number_of_appenders())
        self.assertEqual(0, logger.get_root()._get_number_of_appenders())
Ejemplo n.º 6
0
def loggerAppendFile(filename):
    global appenderFile, filenameLogger

    if appenderFile is None:
        layout = pylog.ColorLayout(False, 'ABSOLUTE')
        appenderFile = pylog.FileAppender(layout, filename, False)
        logger = pylog.get_root()
        logger.addAppender(appenderFile)
        filenameLogger = filename
    elif filename != filenameLogger:
        raise Exception('Change of logfile not supported yet!')
def test_msg(print_location, date_format):
    pylogging.reset()
    layout = pylogging.ColorLayout(True, date_format)
    layout.setOption("printlocation", str(print_location).lower())
    layout.activateOptions()
    appender = pylogging.ConsoleAppender(layout)
    appender.setOption("target", pylogging.ConsoleAppender.getSystemErr())
    appender.activateOptions()
    l = pylogging.get_root()
    pylogging.set_loglevel(l, pylogging.LogLevel.DEBUG)
    l.addAppender(appender)
    l = pylogging.get("manual_config")
    l.warn("time format: {}".format(date_format))
def test_msg(print_location, date_format):
    pylogging.reset()
    layout = pylogging.ColorLayout(True, date_format)
    layout.setOption("printlocation", str(print_location).lower())
    layout.activateOptions()
    appender = pylogging.ConsoleAppender(layout)
    appender.setOption("target", pylogging.ConsoleAppender.getSystemErr())
    appender.activateOptions()
    l = pylogging.get_root()
    pylogging.set_loglevel(l, pylogging.LogLevel.DEBUG)
    l.addAppender(appender)
    l = pylogging.get("manual_config")
    l.warn("time format: {}".format(date_format))
Ejemplo n.º 9
0
    def test_append_to_logging(self):
        # Store all Python logging messages in the "records" list
        import logging
        records = []

        class Handler(logging.Handler):
            def emit(self, record):
                records.append({
                    "name": record.name,
                    "msg": record.msg,
                    "levelno": record.levelno
                })

        root_logger = logging.getLogger("")
        root_logger.addHandler(Handler())
        root_logger.setLevel(logging.NOTSET)

        # Log messages to the "root" logger
        logger.append_to_logging("root")
        self.assertEqual(1, logger.get_root()._get_number_of_appenders())

        # Create two test loggers
        logger1 = logger.get("test1")
        logger.set_loglevel(logger1, logger.LogLevel.TRACE)
        logger2 = logger.get("test2")
        logger3 = logger.get("test2.test3")

        logger1.FATAL("msg1")
        logger1.ERROR("msg2")
        logger1.WARN("msg3")
        logger1.INFO("msg4")
        logger1.DEBUG("msg5")
        logger1.TRACE("msg6")

        logger2.FATAL("msg1")
        logger2.ERROR("msg2")
        logger2.WARN("msg3")
        logger2.INFO("msg4")
        logger2.DEBUG("msg5")
        logger2.TRACE("msg6")

        logger3.FATAL("msg1")
        logger3.ERROR("msg2")
        logger3.WARN("msg3")
        logger3.INFO("msg4")
        logger3.DEBUG("msg5")
        logger3.TRACE("msg6")

        self.assertEqual([{
            'msg': 'msg1',
            'levelno': 50,
            'name': 'root.test1'
        }, {
            'msg': 'msg2',
            'levelno': 40,
            'name': 'root.test1'
        }, {
            'msg': 'msg3',
            'levelno': 30,
            'name': 'root.test1'
        }, {
            'msg': 'msg4',
            'levelno': 20,
            'name': 'root.test1'
        }, {
            'msg': 'msg5',
            'levelno': 10,
            'name': 'root.test1'
        }, {
            'msg': 'msg6',
            'levelno': 10,
            'name': 'root.test1'
        }, {
            'msg': 'msg1',
            'levelno': 50,
            'name': 'root.test2'
        }, {
            'msg': 'msg2',
            'levelno': 40,
            'name': 'root.test2'
        }, {
            'msg': 'msg3',
            'levelno': 30,
            'name': 'root.test2'
        }, {
            'msg': 'msg4',
            'levelno': 20,
            'name': 'root.test2'
        }, {
            'msg': 'msg5',
            'levelno': 10,
            'name': 'root.test2'
        }, {
            'msg': 'msg1',
            'levelno': 50,
            'name': 'root.test2.test3'
        }, {
            'msg': 'msg2',
            'levelno': 40,
            'name': 'root.test2.test3'
        }, {
            'msg': 'msg3',
            'levelno': 30,
            'name': 'root.test2.test3'
        }, {
            'msg': 'msg4',
            'levelno': 20,
            'name': 'root.test2.test3'
        }, {
            'msg': 'msg5',
            'levelno': 10,
            'name': 'root.test2.test3'
        }], records)
Ejemplo n.º 10
0
    def test_file_logging_with_filter(self):
        logger1 = logger.get("test")
        logger2 = logger.get("xyz")
        logger3 = logger.get("xyz.test")

        logger.set_loglevel(logger1, logger.LogLevel.WARN)
        logger.set_loglevel(logger2, logger.LogLevel.DEBUG)
        logger.set_loglevel(logger3, logger.LogLevel.INFO)

        # Test different filter
        log = os.path.join(self.temp, 'test_file_logging_with_filter.log')
        app = logger.append_to_file(log, logger.get_root())
        f = logger.LevelRangeFilter()
        f.setLevelMin(logger.LogLevel.DEBUG)
        f.setLevelMax(logger.LogLevel.WARN)
        app.addFilter(f)

        log2 = os.path.join(self.temp, 'test_file_logging_with_filter2.log')
        app = logger.append_to_file(log2, logger.get_root())
        f = logger.LevelRangeFilter()
        f.setLevelMin(logger.LogLevel.ERROR)
        f.setLevelMax(logger.LogLevel.FATAL)
        app.addFilter(f)

        log3 = os.path.join(self.temp, 'test_file_logging_with_filter3.log')
        app = logger.append_to_file(log3, logger2)
        f = logger.LevelRangeFilter()
        f.setLevelMin(logger.LogLevel.ERROR)
        f.setLevelMax(logger.LogLevel.FATAL)
        app.addFilter(f)

        for l in (logger1, logger2, logger3):
            logger.LOG4CXX_FATAL(l, "FATAL")
            logger.LOG4CXX_ERROR(l, "ERROR")
            logger.LOG4CXX_WARN(l, "WARN")
            logger.LOG4CXX_INFO(l, "INFO")
            logger.LOG4CXX_DEBUG(l, "DEBUG")
            logger.LOG4CXX_TRACE(l, "TRACE")

        logger.reset()
        with open(log) as f:
            expected = """WARN  test WARN
WARN  xyz WARN
INFO  xyz INFO
DEBUG xyz DEBUG
WARN  xyz.test WARN
INFO  xyz.test INFO
"""
            self.assertEqualLogLines(expected, f.read())

        with open(log2) as f:
            expected = """FATAL test FATAL
ERROR test ERROR
FATAL xyz FATAL
ERROR xyz ERROR
FATAL xyz.test FATAL
ERROR xyz.test ERROR
"""
            self.assertEqualLogLines(expected, f.read())

        with open(log3) as f:
            expected = """FATAL xyz FATAL
ERROR xyz ERROR
FATAL xyz.test FATAL
ERROR xyz.test ERROR
"""
            self.assertEqualLogLines(expected, f.read())
Ejemplo n.º 11
0
    def test_append_to_logging(self):
        # Store all Python logging messages in the "records" list
        import logging
        records = []
        class Handler(logging.Handler):
            def emit(self, record):
                records.append({
                    "name": record.name,
                    "msg": record.msg,
                    "levelno": record.levelno
                })
        root_logger = logging.getLogger("")
        root_logger.addHandler(Handler())
        root_logger.setLevel(logging.NOTSET)

        # Log messages to the "root" logger
        logger.append_to_logging("root")
        self.assertEqual(1, logger.get_root()._get_number_of_appenders())

        # Create two test loggers
        logger1 = logger.get("test1");
        logger.set_loglevel(logger1, logger.LogLevel.TRACE)
        logger2 = logger.get("test2");
        logger3 = logger.get("test2.test3");

        logger1.FATAL("msg1")
        logger1.ERROR("msg2")
        logger1.WARN("msg3")
        logger1.INFO("msg4")
        logger1.DEBUG("msg5")
        logger1.TRACE("msg6")

        logger2.FATAL("msg1")
        logger2.ERROR("msg2")
        logger2.WARN("msg3")
        logger2.INFO("msg4")
        logger2.DEBUG("msg5")
        logger2.TRACE("msg6")

        logger3.FATAL("msg1")
        logger3.ERROR("msg2")
        logger3.WARN("msg3")
        logger3.INFO("msg4")
        logger3.DEBUG("msg5")
        logger3.TRACE("msg6")

        self.assertEqual([
            {'msg': 'msg1', 'levelno': 50, 'name': 'root.test1'},
            {'msg': 'msg2', 'levelno': 40, 'name': 'root.test1'},
            {'msg': 'msg3', 'levelno': 30, 'name': 'root.test1'},
            {'msg': 'msg4', 'levelno': 20, 'name': 'root.test1'},
            {'msg': 'msg5', 'levelno': 10, 'name': 'root.test1'},
            {'msg': 'msg6', 'levelno': 10, 'name': 'root.test1'},
            {'msg': 'msg1', 'levelno': 50, 'name': 'root.test2'},
            {'msg': 'msg2', 'levelno': 40, 'name': 'root.test2'},
            {'msg': 'msg3', 'levelno': 30, 'name': 'root.test2'},
            {'msg': 'msg4', 'levelno': 20, 'name': 'root.test2'},
            {'msg': 'msg5', 'levelno': 10, 'name': 'root.test2'},
            {'msg': 'msg1', 'levelno': 50, 'name': 'root.test2.test3'},
            {'msg': 'msg2', 'levelno': 40, 'name': 'root.test2.test3'},
            {'msg': 'msg3', 'levelno': 30, 'name': 'root.test2.test3'},
            {'msg': 'msg4', 'levelno': 20, 'name': 'root.test2.test3'},
            {'msg': 'msg5', 'levelno': 10, 'name': 'root.test2.test3'}
        ], records)
Ejemplo n.º 12
0
    def test_file_logging_with_filter(self):
        logger1 = logger.get("test");
        logger2 = logger.get("xyz");
        logger3 = logger.get("xyz.test");

        logger.set_loglevel(logger1, logger.LogLevel.WARN)
        logger.set_loglevel(logger2, logger.LogLevel.DEBUG)
        logger.set_loglevel(logger3, logger.LogLevel.INFO)

        # Test different filter
        log = os.path.join(self.temp, 'test_file_logging_with_filter.log')
        app = logger.append_to_file(log, logger.get_root())
        f = logger.LevelRangeFilter()
        f.setLevelMin(logger.LogLevel.DEBUG)
        f.setLevelMax(logger.LogLevel.WARN)
        app.addFilter(f)

        log2 = os.path.join(self.temp, 'test_file_logging_with_filter2.log')
        app = logger.append_to_file(log2, logger.get_root())
        f = logger.LevelRangeFilter()
        f.setLevelMin(logger.LogLevel.ERROR)
        f.setLevelMax(logger.LogLevel.FATAL)
        app.addFilter(f)

        log3 = os.path.join(self.temp, 'test_file_logging_with_filter3.log')
        app = logger.append_to_file(log3, logger2)
        f = logger.LevelRangeFilter()
        f.setLevelMin(logger.LogLevel.ERROR)
        f.setLevelMax(logger.LogLevel.FATAL)
        app.addFilter(f)


        for l in (logger1, logger2, logger3):
            logger.LOG4CXX_FATAL(l, "FATAL")
            logger.LOG4CXX_ERROR(l, "ERROR")
            logger.LOG4CXX_WARN (l, "WARN")
            logger.LOG4CXX_INFO (l, "INFO")
            logger.LOG4CXX_DEBUG(l, "DEBUG")
            logger.LOG4CXX_TRACE(l, "TRACE")

        logger.reset()
        with open(log) as f:
            expected =  """WARN  test WARN
WARN  xyz WARN
INFO  xyz INFO
DEBUG xyz DEBUG
WARN  xyz.test WARN
INFO  xyz.test INFO
"""
            self.assertEqualLogLines(expected, f.read())

        with open(log2) as f:
            expected = """FATAL test FATAL
ERROR test ERROR
FATAL xyz FATAL
ERROR xyz ERROR
FATAL xyz.test FATAL
ERROR xyz.test ERROR
"""
            self.assertEqualLogLines(expected, f.read())

        with open(log3) as f:
            expected = """FATAL xyz FATAL
ERROR xyz ERROR
FATAL xyz.test FATAL
ERROR xyz.test ERROR
"""
            self.assertEqualLogLines(expected, f.read())