00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00041 #ifndef _XROOTD_TRACE_H
00042 #define _XROOTD_TRACE_H
00043
00044
00045
00046
00047 #define TRACE_ALL 0x0fff
00048 #define TRACE_DEBUG 0x0001
00049 #define TRACE_EMSG 0x0002
00050 #define TRACE_FS 0x0004
00051 #define TRACE_LOGIN 0x0008
00052 #define TRACE_MEM 0x0010
00053 #define TRACE_REQ 0x0020
00054 #define TRACE_REDIR 0x0040
00055 #define TRACE_RSP 0x0080
00056 #define TRACE_SCHED 0x0100
00057 #define TRACE_STALL 0x0200
00058
00059 #ifndef NODEBUG
00060
00061 #include "XrdSys/XrdSysHeaders.hh"
00062 #include "XrdOuc/XrdOucTrace.hh"
00063
00064
00065 extern XrdOucTrace *XrdHttpTrace;
00066 extern const char *XrdHttpTraceID;
00067
00068 #define TRACE(act, x) \
00069 if (XrdHttpTrace->What & TRACE_ ## act) \
00070 {XrdHttpTrace->Beg(XrdHttpTraceID); cerr <<x; XrdHttpTrace->End();}
00071
00072 #define TRACEI(act, x) \
00073 if (XrdHttpTrace->What & TRACE_ ## act) \
00074 {XrdHttpTrace->Beg(XrdHttpTraceID,TRACELINK->ID); cerr <<x; XrdHttpTrace->End();}
00075
00076 #define TRACEP(act, x) \
00077 if (XrdHttpTrace->What & TRACE_ ## act) \
00078 {XrdHttpTrace->Beg(XrdHttpTraceID,TRACELINK->ID,Response.ID()); cerr <<x; \
00079 XrdHttpTrace->End();}
00080
00081 #define TRACES(act, x) \
00082 if (XrdHttpTrace->What & TRACE_ ## act) \
00083 {XrdHttpTrace->Beg(XrdHttpTraceID,TRACELINK->ID,(const char *)trsid); cerr <<x; \
00084 XrdHttpTrace->End();}
00085
00086 #define TRACING(x) XrdHttpTrace->What & x
00087
00088 #else
00089
00090 #define TRACE(act,x)
00091 #define TRACEI(act,x)
00092 #define TRACEP(act,x)
00093 #define TRACES(act,x)
00094 #define TRACING(x) 0
00095 #endif
00096
00097 #endif