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,
|
struct log_target *log_target_create_syslog(const char *ident, int option,
|
||||||
int facility);
|
int facility);
|
||||||
int log_target_file_reopen(struct log_target *tgt);
|
int log_target_file_reopen(struct log_target *tgt);
|
||||||
|
int log_targets_reopen(void);
|
||||||
|
|
||||||
void log_add_target(struct log_target *target);
|
void log_add_target(struct log_target *target);
|
||||||
void log_del_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;
|
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
|
/*! \brief Generates the logging command string for VTY
|
||||||
* \param[in] unused_info Deprecated parameter, no longer used!
|
* \param[in] unused_info Deprecated parameter, no longer used!
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue