|
xrootd
|
#include <XrdBwmLogger.hh>

Classes | |
| struct | Info |
Public Member Functions | |
| void | Event (Info &eInfo) |
| const char * | Prog () |
| void | sendEvents (void) |
| int | Start (XrdSysError *eobj) |
| XrdBwmLogger (const char *Target) | |
| ~XrdBwmLogger () | |
Private Member Functions | |
| int | Feed (const char *data, int dlen) |
| XrdBwmLoggerMsg * | getMsg () |
| void | retMsg (XrdBwmLoggerMsg *tp) |
Private Attributes | |
| pthread_t | tid |
| char * | theTarget |
| XrdSysError * | eDest |
| XrdOucProg * | theProg |
| XrdSysMutex | qMut |
| XrdSysSemaphore | qSem |
| XrdBwmLoggerMsg * | msgFirst |
| XrdBwmLoggerMsg * | msgLast |
| XrdSysMutex | fMut |
| XrdBwmLoggerMsg * | msgFree |
| int | msgFD |
| int | endIT |
| int | msgsInQ |
| char | theEOL |
Static Private Attributes | |
| static const int | maxmInQ = 256 |
| XrdBwmLogger::XrdBwmLogger | ( | const char * | Target | ) |
| XrdBwmLogger::~XrdBwmLogger | ( | ) |
References endIT, tid, XrdSysThread::Kill(), qMut, XrdSysMutex::Lock(), msgFirst, XrdBwmLoggerMsg::next, theTarget, msgFD, close, theProg, XrdSysMutex::UnLock(), fMut, and msgFree.
| void XrdBwmLogger::Event | ( | Info & | eInfo | ) |
References getMsg(), eDest, XrdSysError::Emsg(), XrdBwmLogger::Info::Tident, XrdBwmLoggerMsg::Tlen, snprintf, XrdBwmLoggerMsg::Text, XrdBwmLoggerMsg::msgSize, XrdBwmLogger::Info::Lfn, XrdBwmLogger::Info::lclNode, XrdBwmLogger::Info::rmtNode, XrdBwmLogger::Info::Flow, XrdBwmLogger::Info::ATime, XrdBwmLogger::Info::BTime, XrdBwmLogger::Info::CTime, XrdBwmLogger::Info::numqIn, XrdBwmLogger::Info::numqOut, XrdBwmLogger::Info::numqXeq, XrdBwmLogger::Info::Size, XrdBwmLogger::Info::ESec, theEOL, XrdBwmLoggerMsg::next, qMut, XrdSysMutex::Lock(), msgLast, msgFirst, XrdSysMutex::UnLock(), qSem, and XrdSysSemaphore::Post().
Referenced by XrdBwmHandle::Retire().
| int XrdBwmLogger::Feed | ( | const char * | data, |
| int | dlen | ||
| ) | [private] |
References msgFD, eDest, XrdSysError::Say(), write(), XrdSysError::Emsg(), and theTarget.
Referenced by sendEvents().
| XrdBwmLoggerMsg * XrdBwmLogger::getMsg | ( | ) | [private] |
References fMut, XrdSysMutex::Lock(), msgsInQ, maxmInQ, msgFree, XrdBwmLoggerMsg::next, and XrdSysMutex::UnLock().
Referenced by Event().
| const char* XrdBwmLogger::Prog | ( | ) | [inline] |
References theTarget.
| void XrdBwmLogger::retMsg | ( | XrdBwmLoggerMsg * | tp | ) | [private] |
References fMut, XrdSysMutex::Lock(), XrdBwmLoggerMsg::next, msgFree, msgsInQ, and XrdSysMutex::UnLock().
Referenced by sendEvents().
| void XrdBwmLogger::sendEvents | ( | void | ) |
References qSem, XrdSysSemaphore::Wait(), qMut, XrdSysMutex::Lock(), endIT, msgFirst, XrdBwmLoggerMsg::next, msgLast, XrdSysMutex::UnLock(), theProg, Feed(), XrdBwmLoggerMsg::Text, XrdBwmLoggerMsg::Tlen, XrdOucProg::Feed(), and retMsg().
Referenced by XrdBwmLoggerSend().
| int XrdBwmLogger::Start | ( | XrdSysError * | eobj | ) |
References eDest, theTarget, msgFD, theEOL, XrdNetSocket::Create(), XRDNET_FIFO, XrdNetSocket::Detach(), theProg, XrdOucProg::Setup(), XrdOucProg::Start(), XrdSysError::Emsg(), XrdSysThread::Run(), tid, and XrdBwmLoggerSend().
Referenced by XrdBwm::Configure().
XrdSysError* XrdBwmLogger::eDest [private] |
Referenced by XrdBwmLogger(), Event(), Start(), and Feed().
int XrdBwmLogger::endIT [private] |
Referenced by XrdBwmLogger(), ~XrdBwmLogger(), and sendEvents().
XrdSysMutex XrdBwmLogger::fMut [private] |
Referenced by ~XrdBwmLogger(), getMsg(), and retMsg().
const int XrdBwmLogger::maxmInQ = 256 [static, private] |
Referenced by getMsg().
int XrdBwmLogger::msgFD [private] |
Referenced by XrdBwmLogger(), ~XrdBwmLogger(), Start(), and Feed().
XrdBwmLoggerMsg* XrdBwmLogger::msgFirst [private] |
Referenced by XrdBwmLogger(), ~XrdBwmLogger(), Event(), and sendEvents().
XrdBwmLoggerMsg* XrdBwmLogger::msgFree [private] |
Referenced by XrdBwmLogger(), ~XrdBwmLogger(), getMsg(), and retMsg().
XrdBwmLoggerMsg* XrdBwmLogger::msgLast [private] |
Referenced by XrdBwmLogger(), Event(), and sendEvents().
int XrdBwmLogger::msgsInQ [private] |
XrdSysMutex XrdBwmLogger::qMut [private] |
Referenced by ~XrdBwmLogger(), Event(), and sendEvents().
XrdSysSemaphore XrdBwmLogger::qSem [private] |
Referenced by Event(), and sendEvents().
char XrdBwmLogger::theEOL [private] |
Referenced by XrdBwmLogger(), Event(), and Start().
XrdOucProg* XrdBwmLogger::theProg [private] |
Referenced by XrdBwmLogger(), ~XrdBwmLogger(), sendEvents(), and Start().
char* XrdBwmLogger::theTarget [private] |
Referenced by XrdBwmLogger(), ~XrdBwmLogger(), Start(), Feed(), and Prog().
pthread_t XrdBwmLogger::tid [private] |
Referenced by XrdBwmLogger(), ~XrdBwmLogger(), and Start().
1.7.5