custom-logger: Add optional reload method

The reload of the configuration of the loggers so far only included
the log levels. In order to support the reload of all other options,
a reload function may be implemented.

Signed-off-by: Thomas Egerer <[email protected]>
This commit is contained in:
Thomas Egerer
2018-08-29 15:55:33 +02:00
committed by Tobias Brunner
parent c163a53a3a
commit 32c190634c
2 changed files with 11 additions and 2 deletions
+7 -2
View File
@@ -49,12 +49,17 @@ struct custom_logger_t {
* @param group debug group to set
* @param level max level to log (0..4)
*/
void (*set_level) (custom_logger_t *this, debug_t group, level_t level);
void (*set_level)(custom_logger_t *this, debug_t group, level_t level);
/**
* Reload custom logger configuration.
*/
void (*reload)(custom_logger_t *this);
/**
* Destroy the custom_logger_t object.
*/
void (*destroy) (custom_logger_t *this);
void (*destroy)(custom_logger_t *this);
};
/**
+4
View File
@@ -549,6 +549,10 @@ static void load_custom_logger(private_daemon_t *this,
lib->settings->get_int(lib->settings, "%s.customlog.%s.%N", def,
lib->ns, entry->name, debug_lower_names, group));
}
if (custom_logger->reload)
{
custom_logger->reload(custom_logger);
}
charon->bus->add_logger(charon->bus, &custom_logger->logger);
}