Hello, I am logging directly into file and also to syslog. Here is snippet from my /etc/asterisk/logger.conf: messages => notice,warning,error,verbose syslog.local0 => notice,warning,error,verbose But the logs look different: VERBOSE[7609][C-00000013] pbx.c: NOTICE[3042] chan_sip.c: Peer '1111' is now UNREACHABLE! vs. VERBOSE[7609][C-00000013]: pbx.c:2925 in pbx_extension_helper: NOTICE[3042]: chan_sip.c:30421 in sip_poke_noanswer: Peer '8884' is now UNREACHABLE! specifically, the messages coming from syslog have extra debugging information (which I am not interested in): pbx.c: chan_sip.c: vs . pbx.c:2925 in pbx_extension_helper: chan_sip.c:30421 in sip_poke_noanswer: Why are same log level settings producing different logs? This is just making the log lines longer and less readable. It is just bombarding me with useless information. I don't have debug set, so why am I getting debug information? Who cares on which line in the .c file the function is defined ? Please tell me how to log through syslog, without the extra debugging info. thanks,
Fourhundred Thecat
2020-Jun-02 15:17 UTC
[asterisk-users] problem with logger: syslog vs. file
> On 2019-11-16 03:29, Fourhundred Thecat wrote: > Hello, > > I am logging directly into file and also to syslog. > Here is snippet from my /etc/asterisk/logger.conf: > > messages => notice,warning,error,verbose > syslog.local0 => notice,warning,error,verbose > > But the logs look different: > > VERBOSE[7609][C-00000013] pbx.c: > NOTICE[3042] chan_sip.c: Peer '1111' is now UNREACHABLE! > > vs. > > VERBOSE[7609][C-00000013]: pbx.c:2925 in pbx_extension_helper: > NOTICE[3042]: chan_sip.c:30421 in sip_poke_noanswer: Peer '8884' is > now UNREACHABLE! > > specifically, the messages coming from syslog have extra debugging > information (which I am not interested in): > > pbx.c: > chan_sip.c: > > vs . > > pbx.c:2925 in pbx_extension_helper: > chan_sip.c:30421 in sip_poke_noanswer: > > Why are same log level settings producing different logs? > > This is just making the log lines longer and less readable. It is just > bombarding me with useless information. I don't have debug set, so why > am I getting debug information? Who cares on which line in the .c file > the function is defined ?I have reported the above problem twice, but unfortunately did not receive any feedback at all. I believe I have now finally pinpointed the exact place in source code, where this is coming from. main/logger.c: break; case LOGTYPE_SYSLOG: snprintf(buf, size, "%s[%d]%s: %s:%d in %s: %s", levels[msg->level], msg->lwp, call_identifier_str, msg->file, msg->line, msg->function, msg->message); term_strip(buf, buf, size); break; case LOGTYPE_FILE: snprintf(buf, size, "[%s] %s[%d]%s %s: %s", msg->date, msg->level_name, msg->lwp, call_identifier_str, msg->file, msg->message); term_strip(buf, buf, size); break; so basically, it is hardcoded that logging to syslog adds extra msg->line and msg->function. why would anybody do that ? This seems to me like a very unfortunate decision. Is there a reason for this ? Am I missing something? than you,
Tony Mountifield
2020-Jun-02 15:48 UTC
[asterisk-users] problem with logger: syslog vs. file
In article <94191802-6c9c-bdab-615b-001786a2a0ca at gmx.ch>, Fourhundred Thecat <400thecat at gmx.ch> wrote:> > On 2019-11-16 03:29, Fourhundred Thecat wrote: > > Hello, > > > > I am logging directly into file and also to syslog. > > Here is snippet from my /etc/asterisk/logger.conf: > > > > messages => notice,warning,error,verbose > > syslog.local0 => notice,warning,error,verbose > > > > But the logs look different: > > > > VERBOSE[7609][C-00000013] pbx.c: > > NOTICE[3042] chan_sip.c: Peer '1111' is now UNREACHABLE! > > > > vs. > > > > VERBOSE[7609][C-00000013]: pbx.c:2925 in pbx_extension_helper: > > NOTICE[3042]: chan_sip.c:30421 in sip_poke_noanswer: Peer '8884' is > > now UNREACHABLE! > > > > specifically, the messages coming from syslog have extra debugging > > information (which I am not interested in): > > > > pbx.c: > > chan_sip.c: > > > > vs . > > > > pbx.c:2925 in pbx_extension_helper: > > chan_sip.c:30421 in sip_poke_noanswer: > > > > Why are same log level settings producing different logs? > > > > This is just making the log lines longer and less readable. It is just > > bombarding me with useless information. I don't have debug set, so why > > am I getting debug information? Who cares on which line in the .c file > > the function is defined ? > > I have reported the above problem twice, but unfortunately did not > receive any feedback at all. > > I believe I have now finally pinpointed the exact place in source code, > where this is coming from. main/logger.c: > break; > > > case LOGTYPE_SYSLOG: > snprintf(buf, size, "%s[%d]%s: %s:%d in %s: %s", > levels[msg->level], msg->lwp, call_identifier_str, > msg->file, msg->line, msg->function, msg->message); > term_strip(buf, buf, size); > break; > > case LOGTYPE_FILE: > snprintf(buf, size, "[%s] %s[%d]%s %s: %s", > msg->date, msg->level_name, msg->lwp, > call_identifier_str, msg->file, msg->message); > term_strip(buf, buf, size); > break; > > > so basically, it is hardcoded that logging to syslog adds extra > msg->line and msg->function. > > why would anybody do that ? > > This seems to me like a very unfortunate decision. > Is there a reason for this ? > Am I missing something?I agree with you that it is strange the two logging types are different. But someone with a different opinion than yours might well say "Why did they decide to omit the line number and function from the file logging? It's very useful information!" The beauty of open source is of course that if you feel strongly enough, you can modify the source file before you build it, so it shows just what you want. Cheers Tony -- Tony Mountifield Work: tony at softins.co.uk - http://www.softins.co.uk Play: tony at mountifield.org - http://tony.mountifield.org