XRootD
Loading...
Searching...
No Matches
XrdCl::Log Class Reference

Handle diagnostics. More...

#include <XrdClLog.hh>

+ Collaboration diagram for XrdCl::Log:

Public Types

enum  LogLevel {
  NoMsg = 0 ,
  ErrorMsg = 1 ,
  WarningMsg = 2 ,
  InfoMsg = 3 ,
  DebugMsg = 4 ,
  DumpMsg = 5
}
 Log levels. More...
 

Public Member Functions

 Log ()
 Constructor.
 
 ~Log ()
 
void Debug (uint64_t topic, const char *format,...)
 Print a debug message.
 
void Dump (uint64_t topic, const char *format,...)
 Print a dump message.
 
void Error (uint64_t topic, const char *format,...)
 Report an error.
 
LogLevel GetLevel () const
 Get the log level.
 
void Info (uint64_t topic, const char *format,...)
 Print an info.
 
uint64_t RegisterTopic (const std::string &topic)
 Register new topic.
 
void Say (LogLevel level, uint64_t topic, const char *format, va_list list)
 
void SetLevel (const std::string &level)
 Set the level of the messages that should be sent to the destination.
 
void SetLevel (LogLevel level)
 Set the level of the messages that should be sent to the destination.
 
void SetMask (const std::string &level, uint64_t mask)
 Sets the mask for the topics of messages that should be printed.
 
void SetMask (LogLevel level, uint64_t mask)
 Sets the mask for the topics of messages that should be printed.
 
void SetOutput (LogOut *output)
 Set the output that should be used.
 
void SetPid (pid_t pid)
 Set pid.
 
void SetTopicName (uint64_t topic, std::string name)
 Map a topic number to a string.
 
void Warning (uint64_t topic, const char *format,...)
 Report a warning.
 

Detailed Description

Handle diagnostics.

Definition at line 100 of file XrdClLog.hh.

Member Enumeration Documentation

◆ LogLevel

Log levels.

Enumerator
NoMsg 

report nothing

ErrorMsg 

report errors

WarningMsg 

report warnings

InfoMsg 

print info

DebugMsg 

print debug info

DumpMsg 

print details of the request and responses

Definition at line 106 of file XrdClLog.hh.

107 {
108 NoMsg = 0,
109 ErrorMsg = 1,
110 WarningMsg = 2,
111 InfoMsg = 3,
112 DebugMsg = 4,
113 DumpMsg = 5
114 };
@ InfoMsg
print info
Definition XrdClLog.hh:111
@ NoMsg
report nothing
Definition XrdClLog.hh:108
@ WarningMsg
report warnings
Definition XrdClLog.hh:110
@ DebugMsg
print debug info
Definition XrdClLog.hh:112
@ ErrorMsg
report errors
Definition XrdClLog.hh:109
@ DumpMsg
print details of the request and responses
Definition XrdClLog.hh:113

Constructor & Destructor Documentation

◆ Log()

XrdCl::Log::Log ( )
inline

Constructor.

Definition at line 119 of file XrdClLog.hh.

119 : pLevel( NoMsg ), pTopicMaxLength( 18 ), pPid(0)
120 {
121 pOutput = new LogOutCerr();
122 int maxMask = (int)DumpMsg+1;
123 for( int i = 0; i < maxMask; ++i )
124 pMask[i] = 0xffffffffffffffffULL;
125 }

References DumpMsg.

◆ ~Log()

XrdCl::Log::~Log ( )
inline

Definition at line 130 of file XrdClLog.hh.

131 {
132 delete pOutput;
133 }

Member Function Documentation

◆ Debug()

void XrdCl::Log::Debug ( uint64_t topic,
const char * format,
... )

Print a debug message.

Definition at line 282 of file XrdClLog.cc.

283 {
284 if( likely( GetLevel() < DebugMsg ) )
285 return;
286
287 if( unlikely( (topic & pMask[DebugMsg]) == 0 ) )
288 return;
289
290 va_list argList;
291 va_start( argList, format );
292 Say( DebugMsg, topic, format, argList );
293 va_end( argList );
294 }
#define likely(x)
#define unlikely(x)
XrdOucPup XrdCmsParser::Pup & Say
LogLevel GetLevel() const
Get the log level.
Definition XrdClLog.hh:238

References DebugMsg, GetLevel(), likely, Say, and unlikely.

Referenced by XrdCl::Channel::Channel(), XrdCl::ClassicCopyJob::ClassicCopyJob(), XrdCl::HttpFilePlugIn::HttpFilePlugIn(), XrdCl::HttpFileSystemPlugIn::HttpFileSystemPlugIn(), XrdCl::Stream::Stream(), XrdCl::ThirdPartyCopyJob::ThirdPartyCopyJob(), XrdCl::TPFallBackCopyJob::TPFallBackCopyJob(), XrdCl::XRootDMsgHandler::XRootDMsgHandler(), XrdCl::Stream::~Stream(), XrdCl::XRootDMsgHandler::~XRootDMsgHandler(), XrdCl::PollerBuiltIn::AddSocket(), XrdCl::FileStateHandler::AfterForkChild(), XrdCl::CheckSumManager::Calculate(), XrdCl::AsyncSocketHandler::CheckHSWait(), XrdCl::FileStateHandler::Checkpoint(), XrdCl::Utils::CheckTPC(), XrdCl::Utils::CheckTPCLite(), XrdCl::ForkHandler::Child(), child(), XrdCl::FileStateHandler::ChkptWrt(), XrdCl::FileStateHandler::ChkptWrtV(), XrdCl::AsyncSocketHandler::Close(), XrdCl::FileStateHandler::Close(), XrdCl::HttpFilePlugIn::Close(), XrdCl::AsyncSocketHandler::Connect(), XrdCl::PollerFactory::CreatePoller(), XrdCl::FileStateHandler::DelXAttr(), XrdCl::HttpFileSystemPlugIn::DirList(), DoLS(), XrdCl::AsyncSocketHandler::DoTlsHandShake(), XrdCl::FSExecutor::Execute(), XrdCl::FileStateHandler::Fcntl(), XrdCl::Stream::ForceError(), XrdCl::InQueue::GetHandlerForMessage(), XrdCl::Env::GetInt(), XrdCl::DefaultEnv::GetMonitor(), XrdCl::Env::GetString(), XrdCl::FileStateHandler::GetXAttr(), XrdCl::AsyncSocketHandler::HandleHandShake(), IndexRemote(), XrdCl::FileStateHandler::ListXAttr(), XrdCl::Utils::LogHostAddresses(), XrdCl::HttpFileSystemPlugIn::MkDir(), XrdCl::XRootDTransport::MultiplexSubStream(), XrdCl::HttpFileSystemPlugIn::Mv(), XrdCl::FileStateHandler::OnClose(), XrdCl::Stream::OnConnect(), XrdCl::AsyncSocketHandler::OnConnectionReturn(), XrdCl::Stream::OnError(), XrdCl::FileStateHandler::OnOpen(), XrdCl::Stream::OnReadTimeout(), XrdCl::XRootDMsgHandler::OnStatusReady(), XrdCl::FileStateHandler::Open(), XrdCl::HttpFilePlugIn::Open(), XrdCl::ZipArchive::OpenArchive(), XrdCl::ForkHandler::Parent(), parent(), XrdCl::FileStateHandler::PgRead(), XrdCl::FileStateHandler::PgReadImpl(), XrdCl::FileStateHandler::PgWriteImpl(), XrdCl::CopyProcess::Prepare(), XrdCl::ForkHandler::Prepare(), prepare(), XrdCl::XRootDMsgHandler::Process(), XrdCl::Utils::ProcessConfigDir(), XrdCl::PlugInManager::ProcessEnvironmentSettings(), XrdCl::Env::PutInt(), XrdCl::Env::PutString(), XrdCl::FileStateHandler::Read(), XrdCl::HttpFilePlugIn::Read(), XrdCl::FileStateHandler::ReadV(), XrdCl::PlugInManager::RegisterDefaultFactory(), XrdCl::PlugInManager::RegisterFactory(), XrdCl::TaskManager::RegisterTask(), XrdCl::InQueue::RemoveMessageHandler(), XrdCl::PollerBuiltIn::RemoveSocket(), XrdCl::HttpFileSystemPlugIn::Rm(), XrdCl::HttpFileSystemPlugIn::RmDir(), XrdCl::ClassicCopyJob::Run(), XrdCl::ThirdPartyCopyJob::Run(), XrdCl::TPFallBackCopyJob::Run(), XrdCl::TaskManager::RunTasks(), XrdCl::FileStateHandler::SetXAttr(), XrdCl::JobManager::Start(), XrdCl::PollerBuiltIn::Start(), XrdCl::TaskManager::Start(), XrdCl::FileStateHandler::Stat(), XrdCl::HttpFilePlugIn::Stat(), XrdCl::HttpFileSystemPlugIn::Stat(), XrdCl::LocalFileHandler::Stat(), XrdCl::JobManager::Stop(), XrdCl::PollerBuiltIn::Stop(), XrdCl::TaskManager::Stop(), XrdCl::FileStateHandler::Sync(), XrdCl::HttpFilePlugIn::Sync(), XrdCl::FileStateHandler::Truncate(), XrdCl::FileStateHandler::TryOtherServer(), XrdCl::TaskManager::UnregisterTask(), XrdCl::FileStateHandler::VectorRead(), XrdCl::HttpFilePlugIn::VectorRead(), XrdCl::FileStateHandler::VectorWrite(), XrdCl::FileStateHandler::Visa(), XrdCl::FileStateHandler::Write(), XrdCl::HttpFilePlugIn::Write(), XrdCl::XRootDMsgHandler::WriteMessageBody(), and XrdCl::FileStateHandler::WriteV().

+ Here is the call graph for this function:

◆ Dump()

void XrdCl::Log::Dump ( uint64_t topic,
const char * format,
... )

Print a dump message.

Definition at line 299 of file XrdClLog.cc.

300 {
301 if( likely( GetLevel() < DumpMsg ) )
302 return;
303
304 if( unlikely( (topic & pMask[DumpMsg]) == 0 ) )
305 return;
306
307 va_list argList;
308 va_start( argList, format );
309 Say( DumpMsg, topic, format, argList );
310 va_end( argList );
311 }

References DumpMsg, GetLevel(), likely, Say, and unlikely.

Referenced by XrdCl::ZipArchive::AppendFile(), XrdCl::FileSystemData::AssignLastURL(), XrdCl::FileSystemData::AssignLoadBalancer(), XrdCl::ZipArchive::CloseArchive(), XrdCl::Stream::DisableIfEmpty(), XrdCl::PollerBuiltIn::EnableReadNotification(), XrdCl::PollerBuiltIn::EnableWriteNotification(), XrdCl::XRootDMsgHandler::Examine(), XrdCl::FSExecutor::Execute(), XrdCl::URL::FromString(), XrdCl::CheckSumManager::GetCalculator(), XrdCl::CheckSumHelper::GetCheckSum(), XrdCl::XRootDTransport::GetHeader(), XrdCl::Utils::GetLocalCheckSum(), XrdCl::Utils::GetRemoteCheckSum(), XrdCl::XRootDTransport::IsStreamBroken(), XrdCl::XRootDTransport::IsStreamTTLElapsed(), XrdCl::Utils::LogPropertyList(), main(), XrdCl::XRootDTransport::MessageReceived(), XrdCl::FileStateHandler::OnClose(), XrdCl::Stream::OnIncoming(), XrdCl::Stream::OnReadyToWrite(), XrdCl::FileStateHandler::OnStateError(), XrdCl::FileStateHandler::OnStateResponse(), XrdCl::XRootDMsgHandler::OnStatusReady(), XrdCl::XRootDMsgHandler::OnStreamEvent(), XrdCl::ZipArchive::OpenArchive(), XrdCl::ZipArchive::OpenFile(), XrdCl::XRootDMsgHandler::Process(), XrdCl::AsyncHSReader::Read(), XrdCl::AsyncMsgReader::Read(), XrdCl::AsyncVectorReader::Read(), XrdCl::MessageUtils::RedirectMessage(), XrdCl::TaskManager::RunTasks(), XrdCl::FileSystemData::Send(), XrdCl::Socket::Send(), XrdCl::Stream::Send(), XrdCl::MessageUtils::SendMessage(), XrdCl::FileStateHandler::TimeOutRequests(), and XrdCl::AsyncMsgWriter::Write().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Error()

void XrdCl::Log::Error ( uint64_t topic,
const char * format,
... )

Report an error.

Definition at line 231 of file XrdClLog.cc.

232 {
233 if( unlikely( GetLevel() < ErrorMsg ) )
234 return;
235
236 if( unlikely( (topic & pMask[ErrorMsg]) == 0 ) )
237 return;
238
239 va_list argList;
240 va_start( argList, format );
241 Say( ErrorMsg, topic, format, argList );
242 va_end( argList );
243 }

References ErrorMsg, GetLevel(), Say, and unlikely.

Referenced by XrdCl::FileSystem::FileSystem(), xrdcl_proxy::ProxyFactory::ProxyFactory(), XrdCl::FSExecutor::AddCommand(), XrdCl::PollerBuiltIn::AddSocket(), XrdCl::CheckSumManager::Calculate(), XrdCl::Stream::CanCollapse(), XrdCl::Utils::CheckTPC(), XrdCl::Utils::CheckTPCLite(), XrdCl::HttpFilePlugIn::Close(), XrdCl::LocalFileHandler::Close(), XrdCl::ZipArchive::CloseArchive(), XrdCl::PostMaster::CollapseRedirect(), XrdCl::AsyncSocketHandler::Connect(), XrdCl::Tls::Connect(), XrdCl::RecorderFactory::CreateFileSystem(), xrdcl_proxy::ProxyFactory::CreateFileSystem(), XrdCl::PollerFactory::CreatePoller(), XrdCl::HttpFileSystemPlugIn::DirList(), DoCache(), DoCat(), DoCD(), DoChMod(), DoLocate(), DoLS(), DoMkDir(), DoMv(), DoPrepare(), DoQuery(), DoRm(), DoRmDir(), DoSpaceInfo(), DoStat(), DoStatVFS(), DoTail(), DoTruncate(), DoXAttr(), XrdCl::Stream::EnableLink(), XrdCl::PollerBuiltIn::EnableReadNotification(), XrdCl::PollerBuiltIn::EnableWriteNotification(), XrdCl::FSExecutor::Execute(), XrdCl::Stream::ForceError(), XrdCl::URL::FromString(), XrdCl::CheckSumManager::GetCalculator(), XrdCl::Utils::GetHostAddresses(), XrdCl::Utils::GetLocalCheckSum(), XrdCl::DefaultEnv::GetMonitor(), XrdCl::XRootDTransport::GetMore(), XrdCl::AsyncSocketHandler::HandleHandShake(), XrdCl::XRootDTransport::HandShake(), XrdCl::Env::ImportInt(), IndexRemote(), XrdCl::CheckSumHelper::Initialize(), XrdCl::XCpCtx::Initialize(), XrdCl::InitTLS(), XrdCl::XRootDMsgHandler::InspectStatusRsp(), XrdCl::XRootDTransport::LogErrorResponse(), main(), XrdCl::XRootDTransport::MessageReceived(), XrdCl::HttpFileSystemPlugIn::MkDir(), XrdCl::HttpFileSystemPlugIn::Mv(), XrdCl::Stream::OnConnectError(), XrdCl::AsyncSocketHandler::OnConnectionReturn(), XrdCl::AsyncSocketHandler::OnFault(), XrdCl::AsyncSocketHandler::OnFaultWhileHandshaking(), XrdCl::FileStateHandler::OnStateError(), XrdCl::XRootDMsgHandler::OnStatusReady(), XrdCl::File::Open(), XrdCl::FileStateHandler::Open(), XrdCl::HttpFilePlugIn::Open(), XrdCl::ZipArchive::OpenArchive(), XrdCl::XRootDMsgHandler::Process(), ProcessStatQuery(), XrdCl::AsyncDiscardReader::Read(), XrdCl::AsyncRawReader::Read(), XrdCl::AsyncVectorReader::Read(), XrdCl::HttpFilePlugIn::Read(), XrdCl::LocalFileHandler::Read(), XrdCl::LocalFileHandler::ReadV(), XrdCl::MessageUtils::RedirectMessage(), XrdCl::PollerBuiltIn::RemoveSocket(), XrdCl::HttpFileSystemPlugIn::Rm(), XrdCl::HttpFileSystemPlugIn::RmDir(), XrdCl::ClassicCopyJob::Run(), XrdCl::MessageUtils::SendMessage(), XrdCl::JobManager::Start(), XrdCl::PollerBuiltIn::Start(), XrdCl::TaskManager::Start(), XrdCl::HttpFilePlugIn::Stat(), XrdCl::HttpFileSystemPlugIn::Stat(), XrdCl::LocalFileHandler::Stat(), XrdCl::JobManager::Stop(), XrdCl::PollerBuiltIn::Stop(), XrdCl::TaskManager::Stop(), XrdCl::LocalFileHandler::Sync(), XrdCl::LocalFileHandler::Truncate(), XrdCl::HttpFilePlugIn::VectorRead(), XrdCl::LocalFileHandler::VectorRead(), XrdCl::LocalFileHandler::VectorWrite(), XrdCl::AsyncHSWriter::Write(), XrdCl::AsyncMsgWriter::Write(), XrdCl::HttpFilePlugIn::Write(), XrdCl::LocalFileHandler::Write(), and XrdCl::LocalFileHandler::WriteV().

+ Here is the call graph for this function:

◆ GetLevel()

LogLevel XrdCl::Log::GetLevel ( ) const
inline

Get the log level.

Definition at line 238 of file XrdClLog.hh.

239 {
240 LogLevel lvl = pLevel.load(std::memory_order_relaxed);
241 return lvl;
242 }
LogLevel
Log levels.
Definition XrdClLog.hh:107

Referenced by Debug(), Dump(), Error(), XrdCl::URL::FromString(), XrdCl::XRootDTransport::GenerateDescription(), Info(), XrdCl::Utils::LogPropertyList(), main(), and Warning().

+ Here is the caller graph for this function:

◆ Info()

void XrdCl::Log::Info ( uint64_t topic,
const char * format,
... )

Print an info.

Definition at line 265 of file XrdClLog.cc.

266 {
267 if( likely( GetLevel() < InfoMsg ) )
268 return;
269
270 if( unlikely( (topic & pMask[InfoMsg]) == 0 ) )
271 return;
272
273 va_list argList;
274 va_start( argList, format );
275 Say( InfoMsg, topic, format, argList );
276 va_end( argList );
277 }

References GetLevel(), InfoMsg, likely, Say, and unlikely.

Referenced by XrdCl::PostMaster::CollapseRedirect(), XrdCl::AsyncSocketHandler::DoTlsHandShake(), XrdCl::Env::ImportInt(), XrdCl::Env::ImportString(), IndexRemote(), XrdCl::Stream::OnConnectError(), XrdCl::FileStateHandler::PgWrite(), XrdCl::ClassicCopyJob::Run(), XrdCl::ThirdPartyCopyJob::Run(), and XrdCl::FileStateHandler::Write().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RegisterTopic()

uint64_t XrdCl::Log::RegisterTopic ( const std::string & topic)
inline

Register new topic.

Definition at line 228 of file XrdClLog.hh.

229 {
230 uint64_t tpcnb = pTopicMap.rbegin()->first << 1;
231 SetTopicName( tpcnb, topic );
232 return tpcnb;
233 }
void SetTopicName(uint64_t topic, std::string name)
Map a topic number to a string.
Definition XrdClLog.cc:163

References SetTopicName().

+ Here is the call graph for this function:

◆ Say()

void XrdCl::Log::Say ( LogLevel level,
uint64_t topic,
const char * format,
va_list list )

Always print the message

Parameters
levellog level
topictopic of the message
formatformat string - the same as in printf
listlist of arguments

Definition at line 96 of file XrdClLog.cc.

100 {
101 //--------------------------------------------------------------------------
102 // Build the user message
103 //--------------------------------------------------------------------------
104 int size = 1024;
105 int ret = 0;
106 char *buffer = 0;
107 while(1)
108 {
109 va_list cp;
110 va_copy( cp, list );
111 buffer = new char[size];
112 ret = vsnprintf( buffer, size, format, cp );
113 va_end( cp );
114
115 if( ret < 0 )
116 {
117 snprintf( buffer, size, "Error while processing a log message \"%s\" \n", format);
118 pOutput->Write(buffer);
119 delete [] buffer;
120 return;
121 }
122 else if( ret < size )
123 break;
124
125 size *= 2;
126 delete [] buffer;
127 }
128
129 //--------------------------------------------------------------------------
130 // Add time and error level
131 //--------------------------------------------------------------------------
132 char now[48];
133 char ts[32];
134 char tz[8];
135 tm tsNow;
136 timeval ttNow;
137
138 gettimeofday( &ttNow, 0 );
139 localtime_r( &ttNow.tv_sec, &tsNow );
140
141 strftime( ts, 32, "%Y-%m-%d %H:%M:%S", &tsNow );
142 strftime( tz, 8, "%z", &tsNow );
143 snprintf( now, 48, "%s.%06ld %s", ts, (long int)ttNow.tv_usec, tz );
144
145 XrdOucTokenizer tok( buffer );
146 char *line = 0;
147 std::ostringstream out;
148 while( (line = tok.GetLine()) )
149 {
150 out << "[" << now << "][" << LogLevelToString( level ) << "]";
151 out << "[" << TopicToString( topic ) << "]";
152 if(pPid) out << "[" << std::setw(5) << pPid << "]";
153 out << " " << line << std::endl;
154 }
155
156 pOutput->Write( out.str() );
157 delete [] buffer;
158 }
virtual void Write(const std::string &message)=0

References XrdOucTokenizer::GetLine(), and XrdCl::LogOut::Write().

+ Here is the call graph for this function:

◆ SetLevel() [1/2]

void XrdCl::Log::SetLevel ( const std::string & level)
inline

Set the level of the messages that should be sent to the destination.

Definition at line 185 of file XrdClLog.hh.

186 {
187 LogLevel lvl;
188 if( StringToLogLevel( level, lvl ) )
189 SetLevel( lvl );
190 }
void SetLevel(LogLevel level)
Set the level of the messages that should be sent to the destination.
Definition XrdClLog.hh:173

References SetLevel().

+ Here is the call graph for this function:

◆ SetLevel() [2/2]

void XrdCl::Log::SetLevel ( LogLevel level)
inline

Set the level of the messages that should be sent to the destination.

Definition at line 173 of file XrdClLog.hh.

174 {
175#if __cplusplus >= 201103L
176 pLevel.store(level, std::memory_order_relaxed);
177#else
178 pLevel = level;
179#endif
180 }

Referenced by main(), SetLevel(), and XrdCl::DefaultEnv::SetLogLevel().

+ Here is the caller graph for this function:

◆ SetMask() [1/2]

void XrdCl::Log::SetMask ( const std::string & level,
uint64_t mask )
inline

Sets the mask for the topics of messages that should be printed.

Definition at line 212 of file XrdClLog.hh.

213 {
214 LogLevel lvl;
215 if( StringToLogLevel( level, lvl ) )
216 pMask[lvl] = mask;
217 }

◆ SetMask() [2/2]

void XrdCl::Log::SetMask ( LogLevel level,
uint64_t mask )
inline

Sets the mask for the topics of messages that should be printed.

Definition at line 204 of file XrdClLog.hh.

205 {
206 pMask[level] = mask;
207 }

Referenced by XrdCl::DefaultEnv::SetLogMask().

+ Here is the caller graph for this function:

◆ SetOutput()

void XrdCl::Log::SetOutput ( LogOut * output)
inline

Set the output that should be used.

Definition at line 195 of file XrdClLog.hh.

196 {
197 delete pOutput;
198 pOutput = output;
199 }

Referenced by XrdCl::DefaultEnv::SetLogFile(), and XrdSsiLogger::SetMCB().

+ Here is the caller graph for this function:

◆ SetPid()

void XrdCl::Log::SetPid ( pid_t pid)
inline

Set pid.

Definition at line 247 of file XrdClLog.hh.

248 {
249 pPid = pid;
250 }

Referenced by child(), and parent().

+ Here is the caller graph for this function:

◆ SetTopicName()

void XrdCl::Log::SetTopicName ( uint64_t topic,
std::string name )

Map a topic number to a string.

Definition at line 163 of file XrdClLog.cc.

164 {
165 uint32_t len = name.length();
166 if( len > pTopicMaxLength )
167 {
168 pTopicMaxLength = len;
169 TopicMap::iterator it;
170 for( it = pTopicMap.begin(); it != pTopicMap.end(); ++it )
171 it->second.append( len-it->second.length(), ' ' );
172 }
173 else
174 name.append( pTopicMaxLength-len, ' ' );
175 pTopicMap[topic] = name;
176 }

Referenced by RegisterTopic(), and XrdCl::SetUpLogging().

+ Here is the caller graph for this function:

◆ Warning()

void XrdCl::Log::Warning ( uint64_t topic,
const char * format,
... )

Report a warning.

Definition at line 248 of file XrdClLog.cc.

249 {
250 if( unlikely( GetLevel() < WarningMsg ) )
251 return;
252
253 if( unlikely( (topic & pMask[WarningMsg]) == 0 ) )
254 return;
255
256 va_list argList;
257 va_start( argList, format );
258 Say( WarningMsg, topic, format, argList );
259 va_end( argList );
260 }

References GetLevel(), Say, unlikely, and WarningMsg.

Referenced by XrdCl::PollerBuiltIn::AddSocket(), XrdCl::PollerBuiltIn::EnableReadNotification(), XrdCl::PollerBuiltIn::EnableWriteNotification(), XrdCl::XRootDMsgHandler::Examine(), XrdCl::ActionExecutor::Execute(), XrdCl::Stream::OnIncoming(), XrdCl::Stream::OnMessageSent(), XrdCl::FileStateHandler::PgWrite(), XrdCl::XRootDMsgHandler::Process(), XrdCl::ClassicCopyJob::Run(), and XrdCl::Stream::Send().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

The documentation for this class was generated from the following files: