mirror of https://gerrit.osmocom.org/libosmocore
logging: add new log_targets_reopen() function
This function will re-open all existing log files in the application, praticularly useful for SIGHUP handlers in case of logrotate
This commit is contained in:
parent
e128f46631
commit
4de854dcf0
|
@ -203,6 +203,7 @@ struct log_target *log_target_create_file(const char *fname);
|
|||
struct log_target *log_target_create_syslog(const char *ident, int option,
|
||||
int facility);
|
||||
int log_target_file_reopen(struct log_target *tgt);
|
||||
int log_targets_reopen(void);
|
||||
|
||||
void log_add_target(struct log_target *target);
|
||||
void log_del_target(struct log_target *target);
|
||||
|
|
|
@ -597,6 +597,26 @@ int log_target_file_reopen(struct log_target *target)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*! \brief close and re-open a log file (for log file rotation) */
|
||||
int log_targets_reopen(void)
|
||||
{
|
||||
struct log_target *tar;
|
||||
int rc = 0;
|
||||
|
||||
llist_for_each_entry(tar, &osmo_log_target_list, entry) {
|
||||
switch (tar->type) {
|
||||
case LOG_TGT_TYPE_FILE:
|
||||
if (log_target_file_reopen(tar) < 0)
|
||||
rc = -1;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
/*! \brief Generates the logging command string for VTY
|
||||
* \param[in] unused_info Deprecated parameter, no longer used!
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue