mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-03-06 02:22:56 +00:00
add sofia tracelevel <level> and tracelevel param in <settings>
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13735 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
c64b31c12c
commit
55c8fbad76
@ -2441,6 +2441,12 @@ SWITCH_STANDARD_API(sofia_function)
|
|||||||
func = cmd_status;
|
func = cmd_status;
|
||||||
} else if (!strcasecmp(argv[0], "xmlstatus")) {
|
} else if (!strcasecmp(argv[0], "xmlstatus")) {
|
||||||
func = cmd_xml_status;
|
func = cmd_xml_status;
|
||||||
|
} else if (!strcasecmp(argv[0], "tracelevel")) {
|
||||||
|
if (argv[1]) {
|
||||||
|
mod_sofia_globals.tracelevel = switch_log_str2level(argv[1]);
|
||||||
|
}
|
||||||
|
stream->write_function(stream, "+OK tracelevel is %s", switch_log_level2str(mod_sofia_globals.tracelevel));
|
||||||
|
goto done;
|
||||||
} else if (!strcasecmp(argv[0], "loglevel")) {
|
} else if (!strcasecmp(argv[0], "loglevel")) {
|
||||||
if (argc > 2 && argv[2] && switch_is_number(argv[2])) {
|
if (argc > 2 && argv[2] && switch_is_number(argv[2])) {
|
||||||
int level = atoi(argv[2]);
|
int level = atoi(argv[2]);
|
||||||
|
@ -274,6 +274,7 @@ struct mod_sofia_globals {
|
|||||||
int debug_presence;
|
int debug_presence;
|
||||||
int auto_restart;
|
int auto_restart;
|
||||||
int auto_nat;
|
int auto_nat;
|
||||||
|
int tracelevel;
|
||||||
};
|
};
|
||||||
extern struct mod_sofia_globals mod_sofia_globals;
|
extern struct mod_sofia_globals mod_sofia_globals;
|
||||||
|
|
||||||
|
@ -1003,9 +1003,9 @@ void launch_sofia_profile_thread(sofia_profile_t *profile)
|
|||||||
static void logger(void *logarg, char const *fmt, va_list ap)
|
static void logger(void *logarg, char const *fmt, va_list ap)
|
||||||
{
|
{
|
||||||
if (fmt && ap) {
|
if (fmt && ap) {
|
||||||
switch_log_vprintf(SWITCH_CHANNEL_LOG_CLEAN, SWITCH_LOG_CONSOLE, fmt, ap);
|
switch_log_vprintf(SWITCH_CHANNEL_LOG_CLEAN, mod_sofia_globals.tracelevel, fmt, ap);
|
||||||
} else if (fmt && !ap) {
|
} else if (fmt && !ap) {
|
||||||
switch_log_printf(SWITCH_CHANNEL_LOG_CLEAN, SWITCH_LOG_CONSOLE, "%s", fmt);
|
switch_log_printf(SWITCH_CHANNEL_LOG_CLEAN, mod_sofia_globals.tracelevel, "%s", fmt);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1521,6 +1521,8 @@ switch_status_t reconfig_sofia(sofia_profile_t *profile)
|
|||||||
char *val = (char *) switch_xml_attr_soft(param, "value");
|
char *val = (char *) switch_xml_attr_soft(param, "value");
|
||||||
if (!strcasecmp(var, "debug")) {
|
if (!strcasecmp(var, "debug")) {
|
||||||
profile->debug = atoi(val);
|
profile->debug = atoi(val);
|
||||||
|
} else if (!strcasecmp(var, "tracelevel")) {
|
||||||
|
mod_sofia_globals.tracelevel = switch_log_str2level(val);
|
||||||
} else if (!strcasecmp(var, "sip-trace")) {
|
} else if (!strcasecmp(var, "sip-trace")) {
|
||||||
if (switch_true(val)) {
|
if (switch_true(val)) {
|
||||||
sofia_set_flag(profile, TFLAG_TPORT_LOG);
|
sofia_set_flag(profile, TFLAG_TPORT_LOG);
|
||||||
|
@ -120,6 +120,19 @@ SWITCH_DECLARE(switch_log_level_t) switch_log_str2level(const char *str)
|
|||||||
int x = 0;
|
int x = 0;
|
||||||
switch_log_level_t level = SWITCH_LOG_INVALID;
|
switch_log_level_t level = SWITCH_LOG_INVALID;
|
||||||
|
|
||||||
|
if (switch_is_number(str)) {
|
||||||
|
x = atoi(str);
|
||||||
|
|
||||||
|
if (x > SWITCH_LOG_INVALID) {
|
||||||
|
return SWITCH_LOG_INVALID -1;
|
||||||
|
} else if (x < 0) {
|
||||||
|
return 0;
|
||||||
|
} else {
|
||||||
|
return x;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
for (x = 0;; x++) {
|
for (x = 0;; x++) {
|
||||||
if (!LEVELS[x]) {
|
if (!LEVELS[x]) {
|
||||||
break;
|
break;
|
||||||
|
@ -690,6 +690,10 @@ SWITCH_DECLARE(switch_bool_t) switch_is_number(const char *str)
|
|||||||
const char *p;
|
const char *p;
|
||||||
switch_bool_t r = SWITCH_TRUE;
|
switch_bool_t r = SWITCH_TRUE;
|
||||||
|
|
||||||
|
if (*str == '-' || *str == '+') {
|
||||||
|
str++;
|
||||||
|
}
|
||||||
|
|
||||||
for (p = str; p && *p; p++) {
|
for (p = str; p && *p; p++) {
|
||||||
if (!(*p == '.' || (*p > 47 && *p < 58))) {
|
if (!(*p == '.' || (*p > 47 && *p < 58))) {
|
||||||
r = SWITCH_FALSE;
|
r = SWITCH_FALSE;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user