00001 #ifndef _XROOTD_TRACE_H
00002 #define _XROOTD_TRACE_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #define TRACE_ALL 0x0fff
00018 #define TRACE_DEBUG 0x0001
00019 #define TRACE_EMSG 0x0002
00020 #define TRACE_FS 0x0004
00021 #define TRACE_LOGIN 0x0008
00022 #define TRACE_MEM 0x0010
00023 #define TRACE_REQ 0x0020
00024 #define TRACE_REDIR 0x0040
00025 #define TRACE_RSP 0x0080
00026 #define TRACE_SCHED 0x0100
00027 #define TRACE_STALL 0x0200
00028
00029 #ifndef NODEBUG
00030
00031 #include "XrdSys/XrdSysHeaders.hh"
00032 #include "XrdOuc/XrdOucTrace.hh"
00033
00034 #define TRACE(act, x) \
00035 if (XrdXrootdTrace->What & TRACE_ ## act) \
00036 {XrdXrootdTrace->Beg(TraceID); cerr <<x; XrdXrootdTrace->End();}
00037
00038 #define TRACEI(act, x) \
00039 if (XrdXrootdTrace->What & TRACE_ ## act) \
00040 {XrdXrootdTrace->Beg(TraceID,TRACELINK->ID); cerr <<x; XrdXrootdTrace->End();}
00041
00042 #define TRACEP(act, x) \
00043 if (XrdXrootdTrace->What & TRACE_ ## act) \
00044 {XrdXrootdTrace->Beg(TraceID,TRACELINK->ID,Response.ID()); cerr <<x; \
00045 XrdXrootdTrace->End();}
00046
00047 #define TRACES(act, x) \
00048 if (XrdXrootdTrace->What & TRACE_ ## act) \
00049 {XrdXrootdTrace->Beg(TraceID,TRACELINK->ID,(const char *)trsid); cerr <<x; \
00050 XrdXrootdTrace->End();}
00051
00052 #define TRACING(x) XrdXrootdTrace->What & x
00053
00054 #else
00055
00056 #define TRACE(act,x)
00057 #define TRACEI(act,x)
00058 #define TRACEP(act,x)
00059 #define TRACES(act,x)
00060 #define TRACING(x) 0
00061 #endif
00062
00063 #endif