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_AUTH 0x0001
00049 #define TRACE_DEBUG 0x0002
00050 #define TRACE_MEM 0x0010
00051 #define TRACE_REQ 0x0020
00052 #define TRACE_REDIR 0x0040
00053 #define TRACE_RSP 0x0080
00054
00055 #ifndef NODEBUG
00056
00057 #include "XrdSys/XrdSysHeaders.hh"
00058 #include "XrdOuc/XrdOucTrace.hh"
00059
00060
00061 extern XrdOucTrace *XrdHttpTrace;
00062 extern const char *XrdHttpTraceID;
00063
00064 #define TRACE(act, x) \
00065 if (XrdHttpTrace->What & TRACE_ ## act) \
00066 {XrdHttpTrace->Beg(XrdHttpTraceID); cerr <<x; XrdHttpTrace->End();}
00067
00068 #define TRACEI(act, x) \
00069 if (XrdHttpTrace->What & TRACE_ ## act) \
00070 {XrdHttpTrace->Beg(XrdHttpTraceID,TRACELINK->ID); cerr <<x; XrdHttpTrace->End();}
00071
00072 #define TRACEP(act, x) \
00073 if (XrdHttpTrace->What & TRACE_ ## act) \
00074 {XrdHttpTrace->Beg(XrdHttpTraceID,TRACELINK->ID,Response.ID()); cerr <<x; \
00075 XrdHttpTrace->End();}
00076
00077 #define TRACES(act, x) \
00078 if (XrdHttpTrace->What & TRACE_ ## act) \
00079 {XrdHttpTrace->Beg(XrdHttpTraceID,TRACELINK->ID,(const char *)trsid); cerr <<x; \
00080 XrdHttpTrace->End();}
00081
00082 #define TRACING(x) XrdHttpTrace->What & x
00083
00084 #else
00085
00086 #define TRACE(act,x)
00087 #define TRACEI(act,x)
00088 #define TRACEP(act,x)
00089 #define TRACES(act,x)
00090 #define TRACING(x) 0
00091 #endif
00092
00093 #endif