diff --git a/configs/samples/pjproject.conf.sample b/configs/samples/pjproject.conf.sample index 03149c4539..273384b82b 100644 --- a/configs/samples/pjproject.conf.sample +++ b/configs/samples/pjproject.conf.sample @@ -52,5 +52,8 @@ ; (default: "") ;asterisk_debug = ; A comma separated list of pjproject log levels to map to ; Asterisk debug - ; (default: "3,4,5,6") + ; (default: "3,4") +;asterisk_trace = ; A comma separated list of pjproject log levels to map to + ; Asterisk trace + ; (default: "5,6") ;type= ; Must be of type log_mappings (default: "") diff --git a/doc/CHANGES-staging/res_pjproject.txt b/doc/CHANGES-staging/res_pjproject.txt new file mode 100644 index 0000000000..132c9506b8 --- /dev/null +++ b/doc/CHANGES-staging/res_pjproject.txt @@ -0,0 +1,8 @@ +Subject: res_pjproject + +In pjproject.conf you can now map pjproject log levels +to the Asterisk TRACE log level. The default mappings +have therefore changed so that only pjproject levels +3 and 4 are mapped to DEBUG and 5 and 6 are now mapped +to TRACE. Previously 3, 4, 5, and 6 were all mapped to +DEBUG. diff --git a/res/res_pjproject.c b/res/res_pjproject.c index f6dce4cd9a..4047acae39 100644 --- a/res/res_pjproject.c +++ b/res/res_pjproject.c @@ -29,7 +29,10 @@ * - 0: LOG_ERROR * - 1: LOG_ERROR * - 2: LOG_WARNING - * - 3 and above: equivalent to ast_debug(level, ...) for res_pjproject.so + * - 3: equivalent to ast_debug(level, ...) for res_pjproject.so + * - 4: equivalent to ast_debug(level, ...) for res_pjproject.so + * - 5: equivalent to ast_trace(level, ...) for res_pjproject.so + * - 6: equivalent to ast_trace(level, ...) for res_pjproject.so */ /*** MODULEINFO @@ -86,12 +89,15 @@ A comma separated list of pjproject log levels to map to Asterisk LOG_NOTICE. - - A comma separated list of pjproject log levels to map to Asterisk LOG_DEBUG. - A comma separated list of pjproject log levels to map to Asterisk LOG_VERBOSE. + + A comma separated list of pjproject log levels to map to Asterisk LOG_DEBUG. + + + A comma separated list of pjproject log levels to map to Asterisk LOG_TRACE. + @@ -148,6 +154,8 @@ struct log_mappings { AST_STRING_FIELD(asterisk_verbose); /*! pjproject log levels mapped to Asterisk DEBUG */ AST_STRING_FIELD(asterisk_debug); + /*! pjproject log levels mapped to Asterisk TRACE */ + AST_STRING_FIELD(asterisk_trace); ); }; @@ -190,6 +198,8 @@ static int get_log_level(int pj_level) mapped_level = __LOG_VERBOSE; } else if (strchr(mappings->asterisk_debug, l)) { mapped_level = __LOG_DEBUG; + } else if (strchr(mappings->asterisk_trace, l)) { + mapped_level = __LOG_TRACE; } else { mapped_level = __LOG_SUPPRESS; } @@ -675,6 +685,7 @@ static int load_module(void) ast_sorcery_object_field_register(pjproject_sorcery, "log_mappings", "asterisk_warning", "", OPT_STRINGFIELD_T, 0, STRFLDSET(struct log_mappings, asterisk_warning)); ast_sorcery_object_field_register(pjproject_sorcery, "log_mappings", "asterisk_notice", "", OPT_STRINGFIELD_T, 0, STRFLDSET(struct log_mappings, asterisk_notice)); ast_sorcery_object_field_register(pjproject_sorcery, "log_mappings", "asterisk_verbose", "", OPT_STRINGFIELD_T, 0, STRFLDSET(struct log_mappings, asterisk_verbose)); + ast_sorcery_object_field_register(pjproject_sorcery, "log_mappings", "asterisk_trace", "", OPT_STRINGFIELD_T, 0, STRFLDSET(struct log_mappings, asterisk_trace)); default_log_mappings = ast_sorcery_alloc(pjproject_sorcery, "log_mappings", "log_mappings"); if (!default_log_mappings) { @@ -683,7 +694,8 @@ static int load_module(void) } ast_string_field_set(default_log_mappings, asterisk_error, "0,1"); ast_string_field_set(default_log_mappings, asterisk_warning, "2"); - ast_string_field_set(default_log_mappings, asterisk_debug, "3,4,5,6"); + ast_string_field_set(default_log_mappings, asterisk_debug, "3,4"); + ast_string_field_set(default_log_mappings, asterisk_trace, "5,6"); ast_sorcery_load(pjproject_sorcery);