diff --git a/src/mod/loggers/mod_syslog/mod_syslog.c b/src/mod/loggers/mod_syslog/mod_syslog.c index de87e86064..11e5ac7b04 100644 --- a/src/mod/loggers/mod_syslog/mod_syslog.c +++ b/src/mod/loggers/mod_syslog/mod_syslog.c @@ -50,6 +50,7 @@ static struct { char *ident; char *format; int facility; + switch_bool_t log_uuid; } globals; struct _facility_table_entry { @@ -146,7 +147,11 @@ static switch_status_t mod_syslog_logger(const switch_log_node_t *node, switch_l /* don't log blank lines */ if (!zstr(node->data) && (strspn(node->data, " \t\r\n") < strlen(node->data))) { - syslog(syslog_level, "%s", node->data); + if (globals.log_uuid && !zstr(node->userdata)) { + syslog(syslog_level, "%s %s", node->userdata, node->data); + } else { + syslog(syslog_level, "%s", node->data); + } } return SWITCH_STATUS_SUCCESS; @@ -182,6 +187,8 @@ static switch_status_t load_config(void) if (log_level == SWITCH_LOG_INVALID) { log_level = SWITCH_LOG_WARNING; } + } else if (!strcasecmp(var, "uuid")) { + globals.log_uuid = switch_true(val); } } }