PJPROJECT logging: Made easier to get available logging levels.
authorRichard Mudgett <rmudgett@digium.com>
Thu, 24 Nov 2016 00:27:54 +0000 (18:27 -0600)
committerRichard Mudgett <rmudgett@digium.com>
Wed, 30 Nov 2016 19:11:48 +0000 (13:11 -0600)
commit1dfa11b65cd3bd768605eb7779214e4330f52ed3
tree7ff2db3895e43802070509ba0b7cf8b3229065dd
parenta0c0b1c9cb01db6b1b968efc01ff43a7f492795e
PJPROJECT logging: Made easier to get available logging levels.

Use of the new logging is as simple as issuing the new CLI command or
setting the new pjproject.conf option.

Other options that can affect the logging are how you have the pjproject
log levels mapped to Asterisk log types in pjproject.conf and if you have
configured Asterisk to log the DEBUG type messages.  Altering the
pjproject.conf level mapping shouldn't be necessary for most installations
as the default mapping is sensible.  Configuring Asterisk to log the DEBUG
message type is standard practice for collecting debug information.

* Added CLI "pjproject set log level" command to dynamically adjust the
maximum pjproject log message level.

* Added CLI "pjproject show log level" command to see the currently set
maximum pjproject log message level.

* Added pjproject.conf startup section "log_level" option to set the
initial maximum pjproject log message level so all messages could be
captured from initialization.

* Set PJ_LOG_MAX_LEVEL to 6 to compile in all defined logging levels into
bundled pjproject.  Pjproject will use the currently set run time log
level to determine if a log message is generated just like Asterisk
verbose and debug logging levels.

* In log_forwarder(), made always log enabled and mapped pjproject log
messages.  DEBUG mapped log messages are no longer gated by the current
Asterisk debug logging level.

* Removed RAII_VAR() from res_pjproject.c:get_log_level().

ASTERISK-26630 #close

Change-Id: I6dca12979f482ffb0450aaf58db0fe0f6d2e5389
CHANGES
configs/samples/pjproject.conf.sample
include/asterisk/options.h
main/asterisk.c
main/libasteriskpj.c
res/res_pjproject.c
res/res_rtp_asterisk.c
third-party/pjproject/patches/config_site.h