[asterisk-bugs] [JIRA] (ASTERISK-25305) Dynamic logger channels can be added multiple times
Mark Michelson (JIRA)
noreply at issues.asterisk.org
Wed Aug 5 14:59:33 CDT 2015
Mark Michelson created ASTERISK-25305:
-----------------------------------------
Summary: Dynamic logger channels can be added multiple times
Key: ASTERISK-25305
URL: https://issues.asterisk.org/jira/browse/ASTERISK-25305
Project: Asterisk
Issue Type: Bug
Security Level: None
Components: Core/Logging
Affects Versions: 13.4.0
Reporter: Mark Michelson
The {{logger add channel}} command attempts to determine if the specified log channel exists before adding the new channel. Unfortunately, this does not work properly when relative paths are specified for the logger channel.
If I run {{logger add channel bob debug}} then that will create a logger channel in the configured log directory (by default /var/log/asterisk/). If I run the command a second time, then the CLI command attempts to find if the channel exists already. Unfortunately, the comparison it runs is to check if "/var/log/asterisk/bob" matches "bob". Since this does not match, an identical logger channel is created. You can continue running the command as much as you want. The result can be something like:
{noformat}
*CLI> logger show channels
Channel Type Status Configuration
------- ---- ------ -------------
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/bob File Enabled - DEBUG
/var/log/asterisk/alice File Enabled - NOTICE
/var/log/asterisk/bob File Enabled - NOTICE
/var/log/asterisk/bob File Enabled - NOTICE
/var/log/asterisk/full File Enabled - DEBUG NOTICE WARNING ERROR VERBOSE DTMF FAX
/var/log/asterisk/messages File Enabled - NOTICE WARNING ERROR
Console Enabled - DEBUG NOTICE WARNING ERROR
{noformat}
And if you check on the contents of the bob file after placing a call, you'll see something like:
{noformat}
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
[Aug 5 14:26:45] DEBUG[15788] res_pjsip_session.c: Response is 200 OK
{noformat}
Yep, the message is written to the file once for each time that the bob channel shows up in the list of logger channels.
The fix for this is to normalize the CLI input to match what the stored log channel will be, and then perform the comparison.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list