From: hadaq Date: Thu, 1 Aug 2002 09:28:48 +0000 (+0000) Subject: Added priority strings in output and color X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=00096ef6468063d620be6492812748b23a865e5f;p=daqdata.git Added priority strings in output and color BUGBUG: LOG_NDEBUG not effective any more --- diff --git a/compat/syslog.c b/compat/syslog.c index 58eb62f..4207aa9 100644 --- a/compat/syslog.c +++ b/compat/syslog.c @@ -1,37 +1,59 @@ -#include +static char *rcsId = "$Header:"; + #include #include #include +#include #define OUR_IDENT_LEN 256 static unsigned ourMaskpri = 0xffffffff; -static unsigned ourLogopt = 0; static char ourIdent[OUR_IDENT_LEN] = ""; +static unsigned ourLogopt = 0; +static unsigned ourFacility = LOG_USER; void SYSLOG_syslog(int priority, const char *message, ...) { va_list ap; + static const char *pri = "PACEWNID"; + char idPri[OUR_IDENT_LEN + 3]; + static const char *mode[] = { + "\033[0;1m\033[43;31m", + "\033[0;1m\033[43;39m", + "\033[43;39m", + "\033[0;1m\033[49;31m", + "\033[0;1m", + "\033[0;1m\033[49;32m", + "", + "", + "\033[49;39m\033[0m" + }; + + sprintf(idPri, "%s<%c>", ourIdent, pri[priority]); + if ((ourLogopt & LOG_PERROR) && (ourMaskpri & (1 << priority))) { - fprintf(stderr, "%s: ", ourIdent); + fprintf(stderr, "%s", mode[priority]); + fprintf(stderr, "%s: ", idPri); va_start(ap, message); vfprintf(stderr, message, ap); va_end(ap); + fprintf(stderr, "%s", mode[LOG_DEBUG + 1]); fprintf(stderr, "%c", '\n'); } + openlog(idPri, ourLogopt & ~LOG_PERROR, ourFacility); va_start(ap, message); vsyslog(priority, message, ap); va_end(ap); + closelog(); } void SYSLOG_openlog(const char *ident, int logopt, int facility) { strncpy(ourIdent, ident, OUR_IDENT_LEN-1); ourLogopt = logopt; - openlog(ident, logopt, facility); + ourFacility = facility; } void SYSLOG_closelog(void) { - closelog(); } int SYSLOG_setlogmask(int maskpri) {