From: Wilfried Goesgens Date: Tue, 21 Oct 2014 19:57:54 +0000 (+0200) Subject: add whether we're in which eventloop / a worker thread to the log output. X-Git-Tag: v9.01~113 X-Git-Url: https://code.citadel.org/?p=citadel.git;a=commitdiff_plain;h=1493fd8ff0de73d30336607b43b1c8113ffcffa2 add whether we're in which eventloop / a worker thread to the log output. --- diff --git a/citadel/context.h b/citadel/context.h index 4b450a416..cde77f496 100644 --- a/citadel/context.h +++ b/citadel/context.h @@ -212,13 +212,13 @@ static INLINE void become_session(CitContext *which_con) { extern int DebugSession; #define CONDBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (DebugSession != 0)) -#define CON_syslog(LEVEL, FORMAT, ...) \ - CONDBGLOG(LEVEL) syslog(LEVEL, \ - "Context: " FORMAT, __VA_ARGS__) +#define CON_syslog(LEVEL, FORMAT, ...) \ + CONDBGLOG(LEVEL) syslog(LEVEL, \ + "%s Context: " FORMAT, IOSTR, __VA_ARGS__) -#define CONM_syslog(LEVEL, FORMAT) \ - CONDBGLOG(LEVEL) syslog(LEVEL, \ - "Context: " FORMAT); +#define CONM_syslog(LEVEL, FORMAT) \ + CONDBGLOG(LEVEL) syslog(LEVEL, \ + "%s Context: " FORMAT, IOSTR); #endif /* CONTEXT_H */ diff --git a/citadel/database.c b/citadel/database.c index 0db5c38fe..3f5123f01 100644 --- a/citadel/database.c +++ b/citadel/database.c @@ -889,8 +889,8 @@ int SeentDebugEnabled = 0; #define DBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (SeentDebugEnabled != 0)) #define SEENM_syslog(LEVEL, FORMAT) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "IO[%ld]CC[%ld] SEEN[%s][%d] " FORMAT, \ - ioid, ccid, Facility, cType) + "%s[%ld]CC[%ld] SEEN[%s][%d] " FORMAT, \ + IOSTR, ioid, ccid, Facility, cType) time_t CheckIfAlreadySeen(const char *Facility, StrBuf *guid, diff --git a/citadel/event_client.c b/citadel/event_client.c index 9b5088f4a..d64e95bac 100644 --- a/citadel/event_client.c +++ b/citadel/event_client.c @@ -338,6 +338,8 @@ void FreeAsyncIOContents(AsyncIO *IO) void StopClientWatchers(AsyncIO *IO, int CloseFD) { + EVM_syslog(LOG_DEBUG, "EVENT StopClientWatchers"); + ev_timer_stop (event_base, &IO->rw_timeout); ev_timer_stop(event_base, &IO->conn_fail); ev_idle_stop(event_base, &IO->unwind_stack); diff --git a/citadel/event_client.h b/citadel/event_client.h index cbb1a5cc1..a5e0c326f 100644 --- a/citadel/event_client.h +++ b/citadel/event_client.h @@ -32,6 +32,8 @@ typedef struct AsyncIO AsyncIO; typedef struct CitContext CitContext; #endif +extern pthread_key_t evConKey; + typedef enum __eIOState { eDBQ, eQDBNext, @@ -221,59 +223,61 @@ typedef struct _IOAddHandler { extern int DebugEventLoop; extern int DebugCAres; +#define IOSTR (const char *) pthread_getspecific(evConKey) + #define EDBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (DebugEventLoop != 0)) #define CCID ((CitContext*)IO->CitContext)?((CitContext*)IO->CitContext)->cs_pid:-1 #define EVQ_syslog(LEVEL, FORMAT, ...) \ - EDBGLOG (LEVEL) syslog(LEVEL, "IOQ " FORMAT, __VA_ARGS__) + EDBGLOG (LEVEL) syslog(LEVEL, "%sQ " FORMAT, IOSTR, __VA_ARGS__) #define EVQM_syslog(LEVEL, FORMAT) \ - EDBGLOG (LEVEL) syslog(LEVEL, "IO " FORMAT) + EDBGLOG (LEVEL) syslog(LEVEL, "%s " FORMAT, IOSTR) #define EV_syslog(LEVEL, FORMAT, ...) \ - EDBGLOG (LEVEL) syslog(LEVEL, "IO[%ld]CC[%d] " FORMAT, IO->ID, CCID, __VA_ARGS__) + EDBGLOG (LEVEL) syslog(LEVEL, "%s[%ld]CC[%d] " FORMAT, IOSTR, IO->ID, CCID, __VA_ARGS__) #define EVM_syslog(LEVEL, FORMAT) \ - EDBGLOG (LEVEL) syslog(LEVEL, "IO[%ld]CC[%d] " FORMAT, IO->ID, CCID) + EDBGLOG (LEVEL) syslog(LEVEL, "%s[%ld]CC[%d] " FORMAT, IOSTR, IO->ID, CCID) #define EVNC_syslog(LEVEL, FORMAT, ...) \ - EDBGLOG (LEVEL) syslog(LEVEL, "IO[%ld] " FORMAT, IO->ID, __VA_ARGS__) + EDBGLOG (LEVEL) syslog(LEVEL, "%s[%ld] " FORMAT, IOSTR, IO->ID, __VA_ARGS__) -#define EVNCM_syslog(LEVEL, FORMAT) EDBGLOG (LEVEL) syslog(LEVEL, "IO[%ld]" FORMAT, IO->ID) +#define EVNCM_syslog(LEVEL, FORMAT) EDBGLOG (LEVEL) syslog(LEVEL, "%s[%ld]" FORMAT, IOSTR, IO->ID) #define CDBGLOG() if (DebugCAres != 0) #define CEDBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (DebugCAres != 0)) #define EV_DNS_LOG_START(a) \ - CDBGLOG () {syslog(LOG_DEBUG, "IO[%ld]CC[%d] + Starting " #a " %s %p FD %d", IO->ID, CCID, __FUNCTION__, &IO->a, IO->a.fd); \ + CDBGLOG () {syslog(LOG_DEBUG, "%s[%ld]CC[%d] + Starting " #a " %s %p FD %d", IOSTR, IO->ID, CCID, __FUNCTION__, &IO->a, IO->a.fd); \ EV_backtrace(IO);} #define EV_DNS_LOG_STOP(a) \ - CDBGLOG () { syslog(LOG_DEBUG, "IO[%ld]CC[%d] - Stopping " #a " %s %p FD %d", IO->ID, CCID, __FUNCTION__, &IO->a, IO->a.fd); \ + CDBGLOG () { syslog(LOG_DEBUG, "%s[%ld]CC[%d] - Stopping " #a " %s %p FD %d", IOSTR, IO->ID, CCID, __FUNCTION__, &IO->a, IO->a.fd); \ EV_backtrace(IO);} #define EV_DNS_LOG_INIT(a) \ - CDBGLOG () { syslog(LOG_DEBUG, "IO[%ld]CC[%d] * Init " #a " %s %p FD %d", IO->ID, CCID, __FUNCTION__, &IO->a, IO->a.fd); \ + CDBGLOG () { syslog(LOG_DEBUG, "%s[%ld]CC[%d] * Init " #a " %s %p FD %d", IOSTR, IO->ID, CCID, __FUNCTION__, &IO->a, IO->a.fd); \ EV_backtrace(IO);} #define EV_DNS_LOGT_START(a) \ - CDBGLOG () { syslog(LOG_DEBUG, "IO[%ld]CC[%d] + Starting " #a " %s %p", IO->ID, CCID, __FUNCTION__, &IO->a); \ + CDBGLOG () { syslog(LOG_DEBUG, "%s[%ld]CC[%d] + Starting " #a " %s %p", IOSTR, IO->ID, CCID, __FUNCTION__, &IO->a); \ EV_backtrace(IO);} #define EV_DNS_LOGT_STOP(a) \ - CDBGLOG () { syslog(LOG_DEBUG, "IO[%ld]CC[%d] - Stopping " #a " %s %p", IO->ID, CCID, __FUNCTION__, &IO->a); \ + CDBGLOG () { syslog(LOG_DEBUG, "%s[%ld]CC[%d] - Stopping " #a " %s %p", IOSTR, IO->ID, CCID, __FUNCTION__, &IO->a); \ EV_backtrace(IO); } #define EV_DNS_LOGT_INIT(a) \ - CDBGLOG () { syslog(LOG_DEBUG, "IO[%ld]CC[%d] * Init " #a " %p", IO->ID, CCID, &IO->a); \ + CDBGLOG () { syslog(LOG_DEBUG, "%s[%ld]CC[%d] * Init " #a " %p", IOSTR, IO->ID, CCID, &IO->a); \ EV_backtrace(IO);} #define EV_DNS_syslog(LEVEL, FORMAT, ...) \ - CEDBGLOG (LEVEL) syslog(LEVEL, "IO[%ld]CC[%d] " FORMAT, IO->ID, CCID, __VA_ARGS__) + CEDBGLOG (LEVEL) syslog(LEVEL, "%s[%ld]CC[%d] " FORMAT, IOSTR, IO->ID, CCID, __VA_ARGS__) #define EVM_DNS_syslog(LEVEL, FORMAT) \ - CEDBGLOG (LEVEL) syslog(LEVEL, "IO[%ld]CC[%d] " FORMAT, IO->ID, CCID) + CEDBGLOG (LEVEL) syslog(LEVEL, "%s[%ld]CC[%d] " FORMAT, IOSTR, IO->ID, CCID) void FreeAsyncIOContents(AsyncIO *IO); diff --git a/citadel/modules/eventclient/serv_eventclient.c b/citadel/modules/eventclient/serv_eventclient.c index 79b0eeb30..04e1938e9 100644 --- a/citadel/modules/eventclient/serv_eventclient.c +++ b/citadel/modules/eventclient/serv_eventclient.c @@ -63,6 +63,7 @@ ev_loop *event_base; int DebugEventLoop = 0; int DebugEventLoopBacktrace = 0; int DebugCurl = 0; +pthread_key_t evConKey; long EvIDSource = 1; /***************************************************************************** @@ -71,12 +72,12 @@ long EvIDSource = 1; #define DBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (DebugCurl != 0)) #define EVCURL_syslog(LEVEL, FORMAT, ...) \ - DBGLOG (LEVEL) syslog(LEVEL, "EVCURL:IO[%ld]CC[%d] " FORMAT, \ - IO->ID, CCID, __VA_ARGS__) + DBGLOG (LEVEL) syslog(LEVEL, "EVCURL:%s[%ld]CC[%d] " FORMAT, \ + IOSTR, IO->ID, CCID, __VA_ARGS__) #define EVCURLM_syslog(LEVEL, FORMAT) \ - DBGLOG (LEVEL) syslog(LEVEL, "EVCURL:IO[%ld]CC[%d] " FORMAT, \ - IO->ID, CCID) + DBGLOG (LEVEL) syslog(LEVEL, "EVCURL:%s[%ld]CC[%d] " FORMAT, \ + IOSTR, IO->ID, CCID) #define CURL_syslog(LEVEL, FORMAT, ...) \ DBGLOG (LEVEL) syslog(LEVEL, "CURL: " FORMAT, __VA_ARGS__) @@ -694,6 +695,7 @@ void InitEventQueue(void) extern void CtdlDestroyEVCleanupHooks(void); extern int EVQShutDown; +const char *IOLog = "IO"; /* * this thread operates the select() etc. via libev. */ @@ -702,7 +704,9 @@ void *client_event_thread(void *arg) struct CitContext libev_client_CC; CtdlFillSystemContext(&libev_client_CC, "LibEv Thread"); -// citthread_setspecific(MyConKey, (void *)&smtp_queue_CC); + + pthread_setspecific(evConKey, IOLog); + EVQM_syslog(LOG_DEBUG, "client_event_thread() initializing\n"); event_base = ev_default_loop (EVFLAG_AUTO); @@ -828,6 +832,8 @@ void DBInitEventQueue(void) DBInboundEventQueue = DBInboundEventQueues[0]; } +const char *DBLog = "BD"; + /* * this thread operates writing to the message database via libev. */ @@ -836,6 +842,8 @@ void *db_event_thread(void *arg) ev_loop *tmp; struct CitContext libev_msg_CC; + pthread_setspecific(evConKey, DBLog); + CtdlFillSystemContext(&libev_msg_CC, "LibEv DB IO Thread"); EVQM_syslog(LOG_DEBUG, "dbevent_thread() initializing\n"); @@ -893,10 +901,16 @@ void DebugCurlEnable(const int n) DebugCurl = n; } +const char *WLog = "WX"; CTDL_MODULE_INIT(event_client) { if (!threading) { + if (pthread_key_create(&evConKey, NULL) != 0) { + syslog(LOG_CRIT, "Can't create TSD key: %s", strerror(errno)); + } + pthread_setspecific(evConKey, WLog); + CtdlRegisterDebugFlagHook(HKEY("eventloop"), DebugEventloopEnable, &DebugEventLoop); CtdlRegisterDebugFlagHook(HKEY("eventloopbacktrace"), DebugEventloopBacktraceEnable, &DebugEventLoopBacktrace); CtdlRegisterDebugFlagHook(HKEY("curl"), DebugCurlEnable, &DebugCurl); diff --git a/citadel/modules/imap/serv_imap.h b/citadel/modules/imap/serv_imap.h index 371dbeb2e..aa3ab2cde 100644 --- a/citadel/modules/imap/serv_imap.h +++ b/citadel/modules/imap/serv_imap.h @@ -108,15 +108,15 @@ extern int IMAPDebugEnabled; #define IMAPDBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (IMAPDebugEnabled != 0)) #define CCCID CCC->cs_pid -#define IMAP_syslog(LEVEL, FORMAT, ...) \ - IMAPDBGLOG(LEVEL) syslog(LEVEL, \ - "IMAPCC[%d] " FORMAT, \ - CCCID, __VA_ARGS__) - -#define IMAPM_syslog(LEVEL, FORMAT) \ - IMAPDBGLOG(LEVEL) syslog(LEVEL, \ - "IMAPCC[%d] " FORMAT, \ - CCCID) +#define IMAP_syslog(LEVEL, FORMAT, ...) \ + IMAPDBGLOG(LEVEL) syslog(LEVEL, \ + "IMAP %s CC[%d] " FORMAT, \ + IOSTR, CCCID, __VA_ARGS__) + +#define IMAPM_syslog(LEVEL, FORMAT) \ + IMAPDBGLOG(LEVEL) syslog(LEVEL, \ + "IMAP %s CC[%d] " FORMAT, \ + IOSTR, CCCID) #define I_FLAG_NONE (0) #define I_FLAG_LOGGED_IN (1<<0) diff --git a/citadel/modules/networkclient/serv_networkclient.c b/citadel/modules/networkclient/serv_networkclient.c index deffa4f6c..95badfb68 100644 --- a/citadel/modules/networkclient/serv_networkclient.c +++ b/citadel/modules/networkclient/serv_networkclient.c @@ -82,21 +82,21 @@ int NetworkClientDebugEnabled = 0; #define EVN_syslog(LEVEL, FORMAT, ...) \ NCDBGLOG(LEVEL) syslog(LEVEL, \ - "IO[%ld]CC[%d]NW[%s][%ld]" FORMAT, \ - IO->ID, CCID, NODE, N, __VA_ARGS__) + "%s[%ld]CC[%d]NW[%s][%ld]" FORMAT, \ + IOSTR, IO->ID, CCID, NODE, N, __VA_ARGS__) #define EVNM_syslog(LEVEL, FORMAT) \ NCDBGLOG(LEVEL) syslog(LEVEL, \ - "IO[%ld]CC[%d]NW[%s][%ld]" FORMAT, \ - IO->ID, CCID, NODE, N) + "%s[%ld]CC[%d]NW[%s][%ld]" FORMAT, \ + IOSTR, IO->ID, CCID, NODE, N) #define EVNCS_syslog(LEVEL, FORMAT, ...) \ - NCDBGLOG(LEVEL) syslog(LEVEL, "IO[%ld]NW[%s][%ld]" FORMAT, \ - IO->ID, NODE, N, __VA_ARGS__) + NCDBGLOG(LEVEL) syslog(LEVEL, "%s[%ld]NW[%s][%ld]" FORMAT, \ + IOSTR, IO->ID, NODE, N, __VA_ARGS__) #define EVNCSM_syslog(LEVEL, FORMAT) \ - NCDBGLOG(LEVEL) syslog(LEVEL, "IO[%ld]NW[%s][%ld]" FORMAT, \ - IO->ID, NODE, N) + NCDBGLOG(LEVEL) syslog(LEVEL, "%s[%ld]NW[%s][%ld]" FORMAT, \ + IOSTR, IO->ID, NODE, N) typedef enum _eNWCState { diff --git a/citadel/modules/pop3client/serv_pop3client.c b/citadel/modules/pop3client/serv_pop3client.c index 9fe2cd6b2..bf235b211 100644 --- a/citadel/modules/pop3client/serv_pop3client.c +++ b/citadel/modules/pop3client/serv_pop3client.c @@ -63,42 +63,42 @@ int POP3ClientDebugEnabled = 0; #define EVP3C_syslog(LEVEL, FORMAT, ...) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "IO[%ld]CC[%d][%ld]POP3: " FORMAT, \ - IO->ID, CCID, N, __VA_ARGS__) + "%s[%ld]CC[%d][%ld]POP3: " FORMAT, \ + IOSTR, IO->ID, CCID, N, __VA_ARGS__) #define EVP3CM_syslog(LEVEL, FORMAT) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "IO[%ld]CC[%d][%ld]POP3: " FORMAT, \ - IO->ID, CCID, N) + "%s[%ld]CC[%d][%ld]POP3: " FORMAT, \ + IOSTR, IO->ID, CCID, N) #define EVP3CQ_syslog(LEVEL, FORMAT, ...) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "P3Q:" FORMAT, \ - __VA_ARGS__) + "%s P3Q:" FORMAT, \ + IOSTR, __VA_ARGS__) #define EVP3CQM_syslog(LEVEL, FORMAT) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "P3Q" FORMAT \ - ) + "%s P3Q" FORMAT, \ + IOSTR) #define EVP3CCS_syslog(LEVEL, FORMAT, ...) \ - DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld][%ld]POP3: " FORMAT, \ - IO->ID, N, __VA_ARGS__) + DBGLOG(LEVEL) syslog(LEVEL, "%s[%ld][%ld]POP3: " FORMAT, \ + IOSTR, IO->ID, N, __VA_ARGS__) #define EVP3CCSM_syslog(LEVEL, FORMAT) \ - DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld][%ld]POP3: " FORMAT, \ - IO->ID, N) + DBGLOG(LEVEL) syslog(LEVEL, "%s[%ld][%ld]POP3: " FORMAT, \ + IOSTR, IO->ID, N) #define POP3C_DBG_SEND() \ EVP3C_syslog(LOG_DEBUG, \ - "IO[%ld]CC[%d][%ld]POP3: > %s\n", \ - IO->ID, CCID, N, \ + "%s[%ld]CC[%d][%ld]POP3: > %s\n", \ + IOSTR, IO->ID, CCID, N, \ ChrPtr(RecvMsg->IO.SendBuf.Buf)) #define POP3C_DBG_READ() \ EVP3C_syslog(LOG_DEBUG, \ - "IO[%ld]CC[%d][%ld]POP3: < %s\n", \ - IO->ID, CCID, N, \ + "%s[%ld]CC[%d][%ld]POP3: < %s\n", \ + IOSTR, IO->ID, CCID, N, \ ChrPtr(RecvMsg->IO.IOBuf)) diff --git a/citadel/modules/rssclient/rss_atom_parser.c b/citadel/modules/rssclient/rss_atom_parser.c index 982869d31..cd4121d5d 100644 --- a/citadel/modules/rssclient/rss_atom_parser.c +++ b/citadel/modules/rssclient/rss_atom_parser.c @@ -68,21 +68,21 @@ int RSSAtomParserDebugEnabled = 0; #define EVRSSATOM_syslog(LEVEL, FORMAT, ...) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "IO[%ld]CC[%d][%ld]RSSP" FORMAT, \ - IO->ID, CCID, N, __VA_ARGS__) + "%s[%ld]CC[%d][%ld]RSSP" FORMAT, \ + IOSTR, IO->ID, CCID, N, __VA_ARGS__) #define EVRSSATOMM_syslog(LEVEL, FORMAT) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "IO[%ld]CC[%d][%ld]RSSP" FORMAT, \ - IO->ID, CCID, N) + "%s[%ld]CC[%d][%ld]RSSP" FORMAT, \ + IOSTR, IO->ID, CCID, N) #define EVRSSATOMCS_syslog(LEVEL, FORMAT, ...) \ - DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld][%ld]RSSP" FORMAT, \ - IO->ID, N, __VA_ARGS__) + DBGLOG(LEVEL) syslog(LEVEL, "%s[%ld][%ld]RSSP" FORMAT, \ + IOSTR, IO->ID, N, __VA_ARGS__) #define EVRSSATOMSM_syslog(LEVEL, FORMAT) \ - DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld][%ld]RSSP" FORMAT, \ - IO->ID, N) + DBGLOG(LEVEL) syslog(LEVEL, "%s[%ld][%ld]RSSP" FORMAT, \ + IOSTR, IO->ID, N) /* * Convert an RDF/RSS datestamp into a time_t diff --git a/citadel/modules/rssclient/serv_rssclient.c b/citadel/modules/rssclient/serv_rssclient.c index 0df7bacad..743948b09 100644 --- a/citadel/modules/rssclient/serv_rssclient.c +++ b/citadel/modules/rssclient/serv_rssclient.c @@ -75,13 +75,13 @@ int RSSClientDebugEnabled = 0; #define EVRSSC_syslog(LEVEL, FORMAT, ...) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "IO[%ld]CC[%d][%ld]RSS" FORMAT, \ - IO->ID, CCID, N, __VA_ARGS__) + "%s[%ld]CC[%d][%ld]RSS" FORMAT, \ + IOSTR, IO->ID, CCID, N, __VA_ARGS__) #define EVRSSCM_syslog(LEVEL, FORMAT) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "IO[%ld]CC[%d][%ld]RSS" FORMAT, \ - IO->ID, CCID, N) + "%s[%ld]CC[%d][%ld]RSS" FORMAT, \ + IOSTR, IO->ID, CCID, N) #define EVRSSQ_syslog(LEVEL, FORMAT, ...) \ DBGLOG(LEVEL) syslog(LEVEL, "RSS" FORMAT, \ @@ -90,8 +90,8 @@ int RSSClientDebugEnabled = 0; DBGLOG(LEVEL) syslog(LEVEL, "RSS" FORMAT) #define EVRSSCSM_syslog(LEVEL, FORMAT) \ - DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld][%ld]RSS" FORMAT, \ - IO->ID, N) + DBGLOG(LEVEL) syslog(LEVEL, "%s[%ld][%ld]RSS" FORMAT, \ + IOSTR, IO->ID, N) typedef enum _RSSState { eRSSCreated, diff --git a/citadel/modules/smtp/smtp_clienthandlers.h b/citadel/modules/smtp/smtp_clienthandlers.h index e080167bd..aa8db2834 100644 --- a/citadel/modules/smtp/smtp_clienthandlers.h +++ b/citadel/modules/smtp/smtp_clienthandlers.h @@ -101,21 +101,21 @@ int smtp_resolve_recipients(SmtpOutMsg *SendMsg); #define EVS_syslog(LEVEL, FORMAT, ...) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "SMTPC:IO[%ld]CC[%d]S[%ld][%ld] " FORMAT, \ - IO->ID, CCID, QID, N, __VA_ARGS__) + "SMTPC:%s[%ld]CC[%d]S[%ld][%ld] " FORMAT, \ + IOSTR, IO->ID, CCID, QID, N, __VA_ARGS__) #define EVSM_syslog(LEVEL, FORMAT) \ DBGLOG(LEVEL) syslog(LEVEL, \ - "SMTPC:IO[%ld]CC[%d]S[%ld][%ld] " FORMAT, \ - IO->ID, CCID, QID, N) + "SMTPC:%s[%ld]CC[%d]S[%ld][%ld] " FORMAT, \ + IOSTR, IO->ID, CCID, QID, N) #define EVNCS_syslog(LEVEL, FORMAT, ...) \ - DBGLOG(LEVEL) syslog(LEVEL, "SMTPC:IO[%ld]S[%ld][%ld] " FORMAT, \ - IO->ID, QID, N, __VA_ARGS__) + DBGLOG(LEVEL) syslog(LEVEL, "SMTPC:%s[%ld]S[%ld][%ld] " FORMAT, \ + IOSTR, IO->ID, QID, N, __VA_ARGS__) #define EVNCSM_syslog(LEVEL, FORMAT) \ - DBGLOG(LEVEL) syslog(LEVEL, "SMTPC:IO[%ld]S[%ld][%ld] " FORMAT, \ - IO->ID, QID, N) + DBGLOG(LEVEL) syslog(LEVEL, "SMTPC:%s[%ld]S[%ld][%ld] " FORMAT, \ + IOSTR, IO->ID, QID, N) #define SMTPC_syslog(LEVEL, FORMAT, ...) \ DBGLOG(LEVEL) syslog(LEVEL, \ diff --git a/citadel/serv_extensions.h b/citadel/serv_extensions.h index 8591737ae..136be62f1 100644 --- a/citadel/serv_extensions.h +++ b/citadel/serv_extensions.h @@ -20,13 +20,13 @@ typedef void (*CtdlDbgFunction) (const int); extern int DebugModules; #define MDBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (DebugModules != 0)) -#define MOD_syslog(LEVEL, FORMAT, ...) \ - MDBGLOG(LEVEL) syslog(LEVEL, \ - "Modules: " FORMAT, __VA_ARGS__) +#define MOD_syslog(LEVEL, FORMAT, ...) \ + MDBGLOG(LEVEL) syslog(LEVEL, \ + "%s Modules: " FORMAT, IOSTR, __VA_ARGS__) -#define MODM_syslog(LEVEL, FORMAT) \ - MDBGLOG(LEVEL) syslog(LEVEL, \ - "Modules: " FORMAT); +#define MODM_syslog(LEVEL, FORMAT) \ + MDBGLOG(LEVEL) syslog(LEVEL, \ + "%s Modules: " FORMAT, IOSTR); diff --git a/citadel/sysdep.c b/citadel/sysdep.c index d7872aebe..6f14ac4b1 100644 --- a/citadel/sysdep.c +++ b/citadel/sysdep.c @@ -1189,7 +1189,7 @@ void HuntBadSession(void) } - +const char *WorkerLogStr = "W"; /* * This loop just keeps going and going and going... */ @@ -1210,6 +1210,8 @@ void *worker_thread(void *blah) { ++num_workers; pthread_mutex_unlock(&ThreadCountMutex); + pthread_setspecific(evConKey, WorkerLogStr); + while (!server_shutting_down) { /* make doubly sure we're not holding any stale db handles