xrootd
Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
XrdCl::Log Class Reference

Handle diagnostics. More...

#include <XrdClLog.hh>

Collaboration diagram for XrdCl::Log:
Collaboration graph
[legend]

Public Types

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

Public Member Functions

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

Private Types

typedef std::map< uint64_t,
std::string > 
TopicMap
 

Private Member Functions

std::string LogLevelToString (LogLevel level)
 
bool StringToLogLevel (const std::string &strLevel, LogLevel &level)
 
std::string TopicToString (uint64_t topic)
 

Private Attributes

LogLevel pLevel
 
uint64_t pMask [DumpMsg+1]
 
LogOutpOutput
 
TopicMap pTopicMap
 
uint32_t pTopicMaxLength
 

Detailed Description

Handle diagnostics.

Member Typedef Documentation

typedef std::map<uint64_t, std::string> XrdCl::Log::TopicMap
private

Member Enumeration Documentation

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

Constructor & Destructor Documentation

XrdCl::Log::Log ( )
inline

Constructor.

References DumpMsg, pMask, and pOutput.

XrdCl::Log::~Log ( )
inline

References pOutput.

Member Function Documentation

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

Print a debug message.

References DebugMsg, likely, pLevel, pMask, Say(), and unlikely.

Referenced by XrdCl::PollerBuiltIn::AddSocket(), XrdCl::PollerLibEvent::AddSocket(), XrdCl::FileStateHandler::AfterForkChild(), XrdCl::CheckSumManager::Calculate(), XrdCl::ThirdPartyCopyJob::CanDo(), XrdCl::Channel::Channel(), XrdCl::Utils::CheckTPC(), XrdCl::ForkHandler::Child(), XrdCl::ClassicCopyJob::ClassicCopyJob(), XrdCl::AsyncSocketHandler::Close(), XrdCl::FileStateHandler::Close(), XrdCl::AsyncSocketHandler::Connect(), XrdCl::PollerFactory::CreatePoller(), XrdCl::XRootDTransport::DoAuthentication(), DoLS(), XrdCl::FSExecutor::Execute(), forkAndRead(), XrdCl::XRootDTransport::GenerateBind(), XrdCl::XRootDTransport::GenerateInitialHS(), XrdCl::XRootDTransport::GenerateInitialHSProtocol(), XrdCl::XRootDTransport::GenerateLogIn(), XrdCl::XRootDTransport::GetCredentials(), XrdCl::Env::GetInt(), XrdCl::DefaultEnv::GetMonitor(), XrdCl::Env::GetString(), RandomHandler::HandleConnection(), RandomPumpHandler::HandleConnection(), XrdClTests::Server::HandleConnections(), XrdCl::PollerLibEvent::Initialize(), XrdCl::DefaultEnv::Initialize(), XrdCl::Utils::LogHostAddresses(), MonitorTest::MonitorTest(), XrdCl::XRootDTransport::MultiplexSubStream(), XrdCl::FileStateHandler::OnClose(), XrdCl::Stream::OnConnect(), XrdCl::AsyncSocketHandler::OnConnectionReturn(), XrdCl::Stream::OnError(), XrdCl::FileStateHandler::OnOpen(), XrdCl::FileStateHandler::Open(), XrdCl::ForkHandler::Parent(), XrdCl::ForkHandler::Prepare(), XrdCl::CopyProcess::Prepare(), XrdCl::XRootDTransport::ProcessBindResp(), XrdCl::XRootDTransport::ProcessLogInResp(), XrdCl::XRootDTransport::ProcessProtocolResp(), XrdCl::XRootDTransport::ProcessServerHS(), XrdCl::Env::PutInt(), XrdCl::Env::PutString(), XrdCl::FileStateHandler::Read(), XrdCl::TaskManager::RegisterTask(), XrdCl::PollerLibEvent::RemoveSocket(), XrdCl::ClassicCopyJob::Run(), XrdCl::ThirdPartyCopyJob::Run(), runChild(), XrdCl::PollerLibEvent::RunEventLoop(), XrdCl::FileStateHandler::RunRecovery(), XrdCl::TaskManager::RunTasks(), XrdClTests::Server::Setup(), XrdCl::PollerLibEvent::Start(), XrdCl::JobManager::Start(), XrdCl::TaskManager::Start(), XrdClTests::Server::Start(), XrdCl::FileStateHandler::Stat(), XrdCl::PollerBuiltIn::Stop(), XrdCl::PollerLibEvent::Stop(), XrdCl::JobManager::Stop(), XrdCl::TaskManager::Stop(), XrdClTests::Server::Stop(), XrdCl::FileStateHandler::Sync(), XrdCl::ThirdPartyCopyJob::ThirdPartyCopyJob(), XrdCl::FileStateHandler::Truncate(), XrdCl::TaskManager::UnregisterTask(), XrdCl::FileStateHandler::VectorRead(), XrdCl::FileStateHandler::Write(), XrdClGetMonitor(), and XrdCl::Stream::~Stream().

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

Print a dump message.

References DumpMsg, likely, pLevel, pMask, Say(), and unlikely.

Referenced by XrdCl::FileSystem::AssignLoadBalancer(), XrdCl::PollerLibEvent::EnableReadNotification(), XrdCl::PollerLibEvent::EnableWriteNotification(), XrdCl::XRootDMsgHandler::Examine(), XrdCl::FSExecutor::Execute(), XrdCl::FileStateHandler::FailMessage(), XrdCl::URL::FromString(), XrdCl::CheckSumManager::GetCalculator(), XrdCl::Utils::GetLocalCheckSum(), XrdCl::Utils::GetRemoteCheckSum(), RandomHandler::HandleConnection(), RandomPumpHandler::HandleConnection(), XrdCl::PollerLibEvent::Initialize(), XrdCl::FileStateHandler::OnClose(), XrdCl::Stream::OnIncoming(), XrdCl::AsyncSocketHandler::OnRead(), XrdCl::Stream::OnReadyToWrite(), XrdCl::FileStateHandler::OnStateError(), XrdCl::FileStateHandler::OnStateResponse(), XrdCl::XRootDMsgHandler::OnStatusReady(), XrdCl::XRootDMsgHandler::OnStreamEvent(), XrdCl::AsyncSocketHandler::OnWrite(), XrdCl::XRootDMsgHandler::ParseResponse(), XrdCl::XRootDMsgHandler::Process(), XrdCl::AsyncSocketHandler::ReadMessage(), XrdCl::XRootDMsgHandler::ReadRawReadV(), XrdCl::FileStateHandler::RecoverMessage(), XrdCl::FileStateHandler::ReOpenFileAtServer(), XrdCl::FileStateHandler::ReWriteFileHandle(), XrdCl::TaskManager::RunTasks(), XrdCl::Stream::Send(), XrdCl::FileSystem::Send(), XrdCl::MessageUtils::SendMessage(), XrdCl::PollerLibEvent::Stop(), XrdCl::JobManager::StopWorkers(), XrdCl::FileStateHandler::TimeOutRequests(), XrdCl::XRootDMsgHandler::UnPackReadVResponse(), and XrdCl::AsyncSocketHandler::WriteCurrentMessage().

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

Report an error.

References ErrorMsg, pLevel, pMask, Say(), and unlikely.

Referenced by XrdCl::FSExecutor::AddCommand(), XrdCl::PollerBuiltIn::AddSocket(), XrdCl::PollerLibEvent::AddSocket(), XrdCl::CheckSumManager::Calculate(), XrdCl::ThirdPartyCopyJob::CanDo(), XrdCl::Utils::CheckTPC(), XrdCl::AsyncSocketHandler::Connect(), XrdCl::PollerFactory::CreatePoller(), XrdCl::XRootDTransport::DoAuthentication(), DoCD(), DoChMod(), DoLocate(), DoLS(), DoMkDir(), DoMv(), DoQuery(), DoRm(), DoRmDir(), DoStat(), DoStatVFS(), DoTruncate(), XrdCl::Stream::EnableLink(), XrdCl::PollerLibEvent::EnableReadNotification(), XrdCl::PollerLibEvent::EnableWriteNotification(), XrdCl::FSExecutor::Execute(), XrdCl::FileStateHandler::FailMessage(), XrdCl::URL::FromString(), XrdCl::XRootDTransport::GetAuthHandler(), XrdCl::CheckSumManager::GetCalculator(), XrdCl::PostMaster::GetChannel(), XrdCl::XRootDTransport::GetCredentials(), XrdCl::Utils::GetLocalCheckSum(), XrdCl::DefaultEnv::GetMonitor(), RandomHandler::HandleConnection(), RandomPumpHandler::HandleConnection(), XrdClTests::Server::HandleConnections(), XrdCl::XRootDMsgHandler::HandleError(), XRootDProtocolHelper::HandleLogin(), XrdCl::XRootDTransport::HandShake(), XrdCl::Env::ImportInt(), XrdCl::PollerLibEvent::Initialize(), XrdCl::DefaultEnv::Initialize(), XrdCl::XRootDTransport::LogErrorResponse(), XrdCl::AsyncSocketHandler::OnConnectionReturn(), XrdCl::Stream::OnFatalError(), XrdCl::AsyncSocketHandler::OnFault(), XrdCl::AsyncSocketHandler::OnFaultWhileHandshaking(), XrdCl::FileStateHandler::OnStateError(), XrdCl::XRootDMsgHandler::OnStatusReady(), XrdCl::FileStateHandler::Open(), XrdCl::XRootDMsgHandler::ParseResponse(), XrdCl::XRootDMsgHandler::Process(), XrdCl::XRootDTransport::ProcessBindResp(), XrdCl::XRootDTransport::ProcessLogInResp(), XrdCl::XRootDTransport::ProcessProtocolResp(), XrdCl::XRootDTransport::ProcessServerHS(), XrdCl::XRootDMsgHandler::ReadRawRead(), XrdCl::XRootDMsgHandler::ReadRawReadV(), XrdCl::PollerLibEvent::RemoveSocket(), XrdCl::XRootDMsgHandler::RewriteRequestRedirect(), XrdCl::ThirdPartyCopyJob::Run(), XrdCl::PollerLibEvent::RunEventLoop(), XrdCl::MessageUtils::SendMessage(), XrdClTests::Server::Setup(), XrdCl::PollerLibEvent::Start(), XrdCl::JobManager::Start(), XrdCl::TaskManager::Start(), XrdClTests::Server::Start(), XrdCl::PollerLibEvent::Stop(), XrdCl::JobManager::Stop(), XrdCl::TaskManager::Stop(), XrdClTests::Server::Stop(), XrdCl::XRootDTransport::StreamAction(), and XrdCl::XRootDMsgHandler::UnPackReadVResponse().

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

Get the log level.

References pLevel.

Referenced by XrdCl::XRootDTransport::SetDescription().

void XrdCl::Log::Info ( uint64_t  topic,
const char *  format,
  ... 
)
inline
std::string XrdCl::Log::LogLevelToString ( LogLevel  level)
private

References DebugMsg, DumpMsg, ErrorMsg, InfoMsg, and WarningMsg.

Referenced by Say().

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

Always print the message

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

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

Referenced by Debug(), Dump(), Error(), Info(), and Warning().

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

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

References pLevel.

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

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

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

References pLevel, and StringToLogLevel().

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

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

References pMask.

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

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

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

References pMask, and StringToLogLevel().

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

Set the output that should be used.

References pOutput.

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

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

Map a topic number to a string.

References pTopicMap, and pTopicMaxLength.

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

bool XrdCl::Log::StringToLogLevel ( const std::string &  strLevel,
LogLevel level 
)
private

References DebugMsg, DumpMsg, ErrorMsg, InfoMsg, and WarningMsg.

Referenced by SetLevel(), and SetMask().

std::string XrdCl::Log::TopicToString ( uint64_t  topic)
private

References pTopicMap, and pTopicMaxLength.

Referenced by Say().

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

Member Data Documentation

LogLevel XrdCl::Log::pLevel
private
uint64_t XrdCl::Log::pMask[DumpMsg+1]
private

Referenced by Debug(), Dump(), Error(), Info(), Log(), SetMask(), and Warning().

LogOut* XrdCl::Log::pOutput
private

Referenced by Log(), Say(), SetOutput(), and ~Log().

TopicMap XrdCl::Log::pTopicMap
private

Referenced by SetTopicName(), and TopicToString().

uint32_t XrdCl::Log::pTopicMaxLength
private

Referenced by SetTopicName(), and TopicToString().


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