ROOT
6.30.04
Reference Guide
All
Namespaces
Files
Pages
XrdProofdTrace.h
Go to the documentation of this file.
1
// @(#)root/proofd:$Id$
2
// Author: G. Ganis June 2005
3
4
/*************************************************************************
5
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
6
* All rights reserved. *
7
* *
8
* For the licensing terms see $ROOTSYS/LICENSE. *
9
* For the list of contributors see $ROOTSYS/README/CREDITS. *
10
*************************************************************************/
11
12
#ifndef ROOT_XrdProofdTrace
13
#define ROOT_XrdProofdTrace
14
15
//////////////////////////////////////////////////////////////////////////
16
// //
17
// XrdProofdTrace //
18
// //
19
// Authors: G. Ganis, CERN, 2005 //
20
// //
21
// Trace utils for xproofd. //
22
// //
23
//////////////////////////////////////////////////////////////////////////
24
25
//
26
// Trace flags
27
//
28
// Global mask
29
#define TRACE_ALL 0xff7f
30
31
// Levels
32
#define TRACE_XERR 0x0001
33
#define TRACE_REQ 0x0002
34
#define TRACE_DBG 0x0004
35
#define TRACE_LOGIN 0x0008
36
#define TRACE_FORK 0x0010
37
#define TRACE_MEM 0x0020
38
#define TRACE_HDBG 0x0040
39
// Bit 0x0080 reserved for future usage
40
41
// Domains
42
#define TRACE_DOMAINS 0xFF00
43
#define TRACE_RSP 0x0100
44
#define TRACE_AUX 0x0200
45
#define TRACE_CMGR 0x0400
46
#define TRACE_SMGR 0x0800
47
#define TRACE_NMGR 0x1000
48
#define TRACE_PMGR 0x2000
49
#define TRACE_GMGR 0x4000
50
#define TRACE_SCHED 0x8000
51
52
#ifndef NODEBUG
53
54
#include "
DllImport.h
"
55
#include "XrdOuc/XrdOucTrace.hh"
56
57
R__EXTERN XrdOucTrace *XrdProofdTrace;
58
59
#if 0
60
// silence warning from gcc6
61
// include/XrdProofdTrace.h:106:10: warning: nonnull argument "this" compared to NULL [-Wnonnull-compare]
62
#if defined(__GNUC__) && (__GNUC__ >= 5) && !defined(__INTEL_COMPILER)
63
#pragma GCC diagnostic ignored "-Wnonnull-compare"
64
#endif
65
#endif
66
67
//
68
// Auxilliary macros
69
//
70
#define XPDDOM(d) unsigned int xpdtracingdomain = (unsigned int)(TRACE_ ## d & TRACE_ALL);
71
#define XPDLOC(d,x) unsigned int xpdtracingdomain = (unsigned int)(TRACE_ ## d & TRACE_ALL); \
72
const char *xpdloc = x;
73
74
#define TRACINGALL(x) (TRACE_ALL == TRACE_ ## x)
75
#define TRACINGERR(x) (TRACE_XERR == TRACE_ ## x)
76
#define TRACINGACT(x) (XrdProofdTrace && (XrdProofdTrace->What & TRACE_ ## x))
77
#define TRACINGDOM (XrdProofdTrace && (XrdProofdTrace->What & xpdtracingdomain))
78
#define TRACING(x) (TRACINGALL(x) || TRACINGERR(x) || (TRACINGACT(x) && TRACINGDOM))
79
80
#define TRACESET(act,on) \
81
if (on) { \
82
XrdProofdTrace->What |= TRACE_ ## act; \
83
} else { \
84
XrdProofdTrace->What &= ~(TRACE_ ## act & TRACE_ALL); \
85
}
86
87
#define XPDPRT(x) \
88
{XrdProofdTrace->Beg("-I"); std::cerr << xpdloc <<": "<< x; XrdProofdTrace->End();}
89
90
#define XPDERR(x) \
91
{XrdProofdTrace->Beg("-E"); std::cerr << xpdloc <<": "<< x; XrdProofdTrace->End();}
92
93
#define TRACE(act, x) \
94
if (TRACING(act)) { \
95
if (TRACINGERR(act)) { \
96
XPDERR(x); \
97
} else { \
98
XPDPRT(x); \
99
} \
100
}
101
102
#define TRACET(tid, act, x) \
103
if (TRACING(act)) { \
104
const char *typ = (TRACINGERR(act)) ? "-E" : "-I"; \
105
XrdProofdTrace->Beg(typ, 0, tid); std::cerr << xpdloc <<": "<< x; XrdProofdTrace->End(); \
106
}
107
108
#define TRACEP(p, act, x) \
109
if (TRACING(act)) { \
110
const char *typ = (TRACINGERR(act)) ? "-E" : "-I"; \
111
if (p) {\
112
XrdProofdTrace->Beg(typ, 0, p->TraceID()); std::cerr << xpdloc <<": "<< x; XrdProofdTrace->End(); \
113
} else {XPDERR(x);}\
114
}
115
#define TRACEI(id, act, x) \
116
if (TRACING(act)) { \
117
if (TRACINGERR(act)) { \
118
if (id) {\
119
XrdProofdTrace->Beg("-E", 0, id); std::cerr << xpdloc <<": "<< x; XrdProofdTrace->End(); \
120
} else { XPDERR(x); }\
121
} else { \
122
if (id) {\
123
XrdProofdTrace->Beg("-I", 0, id); std::cerr << xpdloc <<": "<< x; XrdProofdTrace->End(); \
124
} else { XPDPRT(x); }\
125
} \
126
}
127
128
#else
129
130
// Dummy versions
131
132
#define TRACING(x) 0
133
#define TRACINGERR(x) (0)
134
#define TRACESET(act,on)
135
#define XPDLOC(x)
136
#define XPDPRT(x)
137
#define XPDERR(x)
138
#define TRACE(act, x)
139
#define TRACEID(tid, act, x)
140
#define TRACEP(p, act, x)
141
#define TRACEI(id, act, x)
142
143
#endif
144
145
#endif
DllImport.h
proof
proofd
inc
XrdProofdTrace.h
Generated on Tue May 5 2020 14:03:16 for ROOT by
1.8.5