summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorey Farrell <git@cfware.com>2016-09-20 10:22:45 -0400
committerCorey Farrell <git@cfware.com>2016-09-20 13:03:40 -0400
commit00f1d05d34219f5cb0fc29032a928c3919924d62 (patch)
tree3f427bbaad80ff3661934aa81966faf971bb5af5
parent74f562a8e2da5acdcde12d58f41e231962236ef9 (diff)
logger: Always enable verbose for console channel.
Previous versions of Asterisk did not require verbose to be specified in logger.conf for the console channel, if it was requested by command line or asterisk.conf it just worked. This change causes Asterisk to always enable verbose in the console channel level mask. Verbose is displayed on consoles if requested by command line, option_verbose or 'core set verbose'. This also delays initialization of the logger until after threadstorage is initialized. Initializing too early can cause messages to be printed multiple times to the console (stdout). ASTERISK-26391 #close Change-Id: I52187d67c2fcb3efd5561bf04b3e5e23e5ee8a04
-rw-r--r--main/asterisk.c2
-rw-r--r--main/logger.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/main/asterisk.c b/main/asterisk.c
index 7b1338c3d..fb47d9927 100644
--- a/main/asterisk.c
+++ b/main/asterisk.c
@@ -4448,7 +4448,6 @@ static void asterisk_daemon(int isroot, const char *runuser, const char *rungrou
check_init(ast_format_cache_init(), "Format Cache");
check_init(ast_codec_builtin_init(), "Built-in Codecs");
check_init(aco_init(), "Configuration Option Framework");
- check_init(init_logger(), "Logger");
check_init(ast_bucket_init(), "Bucket API");
check_init(stasis_init(), "Stasis");
check_init(ast_stasis_system_init(), "Stasis system-level information");
@@ -4478,6 +4477,7 @@ static void asterisk_daemon(int isroot, const char *runuser, const char *rungrou
threadstorage_init();
+ check_init(init_logger(), "Logger");
check_init(ast_rtp_engine_init(), "RTP Engine");
ast_autoservice_init();
diff --git a/main/logger.c b/main/logger.c
index db3d7a730..315de9f23 100644
--- a/main/logger.c
+++ b/main/logger.c
@@ -479,6 +479,7 @@ static void make_components(struct logchannel *chan)
* with calculating the ast_verb_sys_level value.
*/
chan->verbosity = -1;
+ logmask |= (1 << __LOG_VERBOSE);
} else {
chan->verbosity = verb_level;
}
@@ -663,7 +664,8 @@ static int init_logger_chain(const char *altconf)
return -1;
}
chan->type = LOGTYPE_CONSOLE;
- chan->logmask = (1 << __LOG_WARNING) | (1 << __LOG_NOTICE) | (1 << __LOG_ERROR);
+ chan->logmask = (1 << __LOG_WARNING) | (1 << __LOG_NOTICE) | (1 << __LOG_ERROR)
+ | (1 << __LOG_VERBOSE);
memcpy(&chan->formatter, &logformatter_default, sizeof(chan->formatter));
AST_RWLIST_INSERT_HEAD(&logchannels, chan, list);