diff options
author | Stefan Metzmacher <metze@samba.org> | 2011-11-15 21:50:54 +0100 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2011-11-16 12:25:01 +0100 |
commit | ffb846ba7c8fcec29236453b70988febc5dd77ad (patch) | |
tree | 660ceb8ff758f17e5b474127f0cf18235a1c00a2 /lib/util | |
parent | 8507adb8d0087e833d44462d3247e819a9e05860 (diff) | |
download | samba-ffb846ba7c8fcec29236453b70988febc5dd77ad.tar.gz samba-ffb846ba7c8fcec29236453b70988febc5dd77ad.tar.bz2 samba-ffb846ba7c8fcec29236453b70988febc5dd77ad.zip |
lib/util/debug: with log level = 10 we should be more verbose
log level = 10 already impacts performance, so we can turn on
more details and print the pid, [e][u|g]id and class information.
So it implies "debug pid = yes", "debug uid = yes" and "debug class = yes".
This generates a lot more useful log files.
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed Nov 16 12:25:02 CET 2011 on sn-devel-104
Diffstat (limited to 'lib/util')
-rw-r--r-- | lib/util/debug.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/util/debug.c b/lib/util/debug.c index cc57ba8419..a6388513c7 100644 --- a/lib/util/debug.c +++ b/lib/util/debug.c @@ -944,14 +944,19 @@ bool dbghdrclass(int level, int cls, const char *location, const char *func) * not yet loaded, then default to timestamps on. */ if( state.settings.timestamp_logs || state.settings.debug_prefix_timestamp) { + bool verbose = false; char header_str[200]; header_str[0] = '\0'; - if( state.settings.debug_pid) + if (unlikely(DEBUGLEVEL_CLASS[ cls ] >= 10)) { + verbose = true; + } + + if (verbose || state.settings.debug_pid) slprintf(header_str,sizeof(header_str)-1,", pid=%u",(unsigned int)getpid()); - if( state.settings.debug_uid) { + if (verbose || state.settings.debug_uid) { size_t hs_len = strlen(header_str); slprintf(header_str + hs_len, sizeof(header_str) - 1 - hs_len, @@ -960,7 +965,8 @@ bool dbghdrclass(int level, int cls, const char *location, const char *func) (unsigned int)getuid(), (unsigned int)getgid()); } - if (state.settings.debug_class && (cls != DBGC_ALL)) { + if ((verbose || state.settings.debug_class) + && (cls != DBGC_ALL)) { size_t hs_len = strlen(header_str); slprintf(header_str + hs_len, sizeof(header_str) -1 - hs_len, |