]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
res_pjproject: Allow mapping to Asterisk TRACE level
authorGeorge Joseph <gjoseph@digium.com>
Mon, 16 Aug 2021 13:25:44 +0000 (07:25 -0600)
committerGeorge Joseph <gjoseph@digium.com>
Thu, 19 Aug 2021 18:00:02 +0000 (13:00 -0500)
Allow mapping pjproject log messages to the Asterisk TRACE
log level.  The defaults were also changes to log pjproject
levels 3,4 to DEBUG and 5,6 to TRACE.  Previously 3,4,5,6
all went to DEBUG.

ASTERISK-29582

Change-Id: I859a37a8dec263ed68099709cfbd3e665324c72d

configs/samples/pjproject.conf.sample
doc/CHANGES-staging/res_pjproject.txt [new file with mode: 0644]
res/res_pjproject.c

index 03149c453975989249602f3a5cb90a11d132f5e7..273384b82b42870d6182db2542daa9edcbdaa4c8 100644 (file)
@@ -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 (file)
index 0000000..132c950
--- /dev/null
@@ -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.
index f6dce4cd9a19f2a18c03b351b2ad93b4413fda66..4047acae39105c9b60f302429ac08466ffcf69bb 100644 (file)
  *  - 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
                                <configOption name="asterisk_notice" default="">
                                        <synopsis>A comma separated list of pjproject log levels to map to Asterisk LOG_NOTICE.</synopsis>
                                </configOption>
-                               <configOption name="asterisk_debug" default="3,4,5,6">
-                                       <synopsis>A comma separated list of pjproject log levels to map to Asterisk LOG_DEBUG.</synopsis>
-                               </configOption>
                                <configOption name="asterisk_verbose" default="">
                                        <synopsis>A comma separated list of pjproject log levels to map to Asterisk LOG_VERBOSE.</synopsis>
                                </configOption>
+                               <configOption name="asterisk_debug" default="3,4">
+                                       <synopsis>A comma separated list of pjproject log levels to map to Asterisk LOG_DEBUG.</synopsis>
+                               </configOption>
+                               <configOption name="asterisk_trace" default="5,6">
+                                       <synopsis>A comma separated list of pjproject log levels to map to Asterisk LOG_TRACE.</synopsis>
+                               </configOption>
                        </configObject>
                </configFile>
        </configInfo>
@@ -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);