Loggers specify what log messages they want to receive during registration.
This also allows us to generate the log message only once for all loggers that need it (avoids calls to custom printf specifier callbacks). To update the log levels loggers can simply be registered again.
This commit is contained in:
+4
-4
@@ -395,11 +395,9 @@ static void initialize_loggers(bool use_stderr, level_t levels[])
|
||||
{
|
||||
/* set up default stdout file_logger */
|
||||
file_logger = file_logger_create(stdout, NULL, FALSE);
|
||||
charon->bus->add_logger(charon->bus, &file_logger->logger);
|
||||
charon->file_loggers->insert_last(charon->file_loggers, file_logger);
|
||||
/* set up default daemon sys_logger */
|
||||
sys_logger = sys_logger_create(LOG_DAEMON, FALSE);
|
||||
charon->bus->add_logger(charon->bus, &sys_logger->logger);
|
||||
charon->sys_loggers->insert_last(charon->sys_loggers, sys_logger);
|
||||
for (group = 0; group < DBG_MAX; group++)
|
||||
{
|
||||
@@ -409,12 +407,14 @@ static void initialize_loggers(bool use_stderr, level_t levels[])
|
||||
file_logger->set_level(file_logger, group, levels[group]);
|
||||
}
|
||||
}
|
||||
charon->bus->add_logger(charon->bus, &file_logger->logger);
|
||||
charon->bus->add_logger(charon->bus, &sys_logger->logger);
|
||||
|
||||
/* set up default auth sys_logger */
|
||||
sys_logger = sys_logger_create(LOG_AUTHPRIV, FALSE);
|
||||
charon->bus->add_logger(charon->bus, &sys_logger->logger);
|
||||
charon->sys_loggers->insert_last(charon->sys_loggers, sys_logger);
|
||||
sys_logger->set_level(sys_logger, DBG_ANY, LEVEL_AUDIT);
|
||||
charon->sys_loggers->insert_last(charon->sys_loggers, sys_logger);
|
||||
charon->bus->add_logger(charon->bus, &sys_logger->logger);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user