XrdMonDecSink Class Reference

#include <XrdMonDecSink.hh>

List of all members.

Public Member Functions

 XrdMonDecSink (const char *baseDir, const char *rtLogDir, int rtBufSize, bool saveTraces, int maxTraceLogSize)
 ~XrdMonDecSink ()
void init (dictid_t min, dictid_t max, const string &senderHP)
sequen_t lastSeq () const
void registerXrdRestart (kXR_int32 stod, senderid_t senderId)
void setLastSeq (sequen_t seq)
void addDictId (dictid_t xrdId, const char *theString, int len, senderid_t senderId)
void addStageInfo (dictid_t xrdId, const char *theString, int len, senderid_t senderId)
void addUserId (dictid_t xrdId, const char *theString, int len, senderid_t senderId)
void add (dictid_t xrdId, XrdMonDecTraceInfo &trace, senderid_t senderId)
void addUserDisconnect (dictid_t xrdId, kXR_int32 sec, kXR_int32 timestamp, senderid_t senderId)
void openFile (dictid_t dictId, kXR_int32 timestamp, senderid_t senderId, kXR_int64 fSize)
void closeFile (dictid_t dictId, kXR_int64 bytesR, kXR_int64 bytesW, kXR_int32 timestamp, senderid_t senderId)
void flushHistoryData ()
void flushRealTimeData ()
void reset (senderid_t senderId)

Private Types

typedef map< dictid_t, XrdMonDecDictInfo * > dmap_t
typedef map< dictid_t, XrdMonDecUserInfo * > umap_t
typedef map< dictid_t, XrdMonDecDictInfo
* >::iterator 
dmapitr_t
typedef map< dictid_t, XrdMonDecUserInfo
* >::iterator 
umapitr_t
typedef vector< XrdMonDecTraceInfoTraceVector

Private Member Functions

void initRT (const char *rtLogDir, int rtBufSize)
void addVersion ()
void loadUniqueIdsAndSeq ()
vector< XrdMonDecDictInfo * > loadActiveDictInfo ()
void flushClosedDicts ()
void flushUserCache ()
void flushTCache ()
void checkpoint ()
void openTraceFile (fstream &f)
void write2TraceFile (fstream &f, const char *buf, int len)
void registerLostPacket (dictid_t id, const char *descr)
void reportLostPackets ()
void flushOneDMap (dmap_t *m, int &curLen, const int BUFSIZE, string &buf, fstream &fD)
void flushOneUMap (umap_t *m, int &curLen, const int BUFSIZE, string &buf, fstream &fD)
void resetDMap (senderid_t senderId)
void resetUMap (senderid_t senderId)

Private Attributes

kXR_unt16 _verFreqCount
vector< dmap_t * > _dCache
vector< umap_t * > _uCache
XrdSysMutex _dMutex
XrdSysMutex _uMutex
XrdMonBufferedOutput_rtLogger
bool _saveTraces
TraceVector _tCache
kXR_unt32 _tCacheSize
kXR_unt16 _traceLogNumber
kXR_int64 _maxTraceLogSize
map< dictid_t, long_lost
sequen_t _lastSeq
dictid_t _uniqueDictId
dictid_t _uniqueUserId
string _path
string _jnlPath
string _dictPath
string _userPath
string _rtFlagPath
string _rtMaxIdsPath
string _xrdRestartLog

Static Private Attributes

static const kXR_unt16 VER_FREQ


Detailed Description

Definition at line 31 of file XrdMonDecSink.hh.


Member Typedef Documentation

typedef map<dictid_t, XrdMonDecDictInfo*> XrdMonDecSink::dmap_t [private]

Definition at line 80 of file XrdMonDecSink.hh.

typedef map<dictid_t, XrdMonDecUserInfo*> XrdMonDecSink::umap_t [private]

Definition at line 81 of file XrdMonDecSink.hh.

typedef map<dictid_t, XrdMonDecDictInfo*>::iterator XrdMonDecSink::dmapitr_t [private]

Definition at line 82 of file XrdMonDecSink.hh.

typedef map<dictid_t, XrdMonDecUserInfo*>::iterator XrdMonDecSink::umapitr_t [private]

Definition at line 83 of file XrdMonDecSink.hh.

typedef vector<XrdMonDecTraceInfo> XrdMonDecSink::TraceVector [private]

Definition at line 127 of file XrdMonDecSink.hh.


Constructor & Destructor Documentation

XrdMonDecSink::XrdMonDecSink ( const char *  baseDir,
const char *  rtLogDir,
int  rtBufSize,
bool  saveTraces,
int  maxTraceLogSize 
)

Definition at line 34 of file XrdMonDecSink.cc.

References _dictPath, _jnlPath, _path, _saveTraces, _tCache, _tCacheSize, _userPath, _xrdRestartLog, access, ERR_INVALIDARG, generateTimestamp(), initRT(), loadUniqueIdsAndSeq(), and s.

XrdMonDecSink::~XrdMonDecSink (  ) 

Definition at line 86 of file XrdMonDecSink.cc.

References _dCache, _dMutex, _lost, _rtFlagPath, _rtLogger, _rtMaxIdsPath, _uCache, _uMutex, _uniqueDictId, _uniqueUserId, checkpoint(), XrdMonBufferedOutput::flush(), flushClosedDicts(), flushTCache(), i, XrdSysMutexHelper::Lock(), out, reportLostPackets(), resetDMap(), resetUMap(), and unlink.


Member Function Documentation

void XrdMonDecSink::init ( dictid_t  min,
dictid_t  max,
const string senderHP 
)

Definition at line 141 of file XrdMonDecSink.cc.

References loadActiveDictInfo().

Referenced by XrdMonDecPacketDecoder::init().

sequen_t XrdMonDecSink::lastSeq (  )  const [inline]

Definition at line 41 of file XrdMonDecSink.hh.

References _lastSeq.

Referenced by XrdMonDecPacketDecoder::lastSeq().

void XrdMonDecSink::registerXrdRestart ( kXR_int32  stod,
senderid_t  senderId 
)

Definition at line 852 of file XrdMonDecSink.cc.

References _rtLogger, _xrdRestartLog, XrdMonBufferedOutput::add(), buf, GMT, h, XrdMonSenderInfo::id2Host(), out, sprintf(), t, and timestamp2string().

Referenced by XrdMonDecPacketDecoder::operator()().

void XrdMonDecSink::setLastSeq ( sequen_t  seq  )  [inline]

Definition at line 44 of file XrdMonDecSink.hh.

References _lastSeq.

Referenced by XrdMonDecPacketDecoder::operator()().

void XrdMonDecSink::addDictId ( dictid_t  xrdId,
const char *  theString,
int  len,
senderid_t  senderId 
)

Definition at line 210 of file XrdMonDecSink.cc.

References _dCache, _dMutex, _uniqueDictId, and XrdSysMutexHelper::Lock().

Referenced by XrdMonDecPacketDecoder::decodeDictPacket().

void XrdMonDecSink::addStageInfo ( dictid_t  xrdId,
const char *  theString,
int  len,
senderid_t  senderId 
)

Definition at line 243 of file XrdMonDecSink.cc.

References _rtLogger, _uniqueDictId, _verFreqCount, XrdMonBufferedOutput::add(), addVersion(), VER_FREQ, and XrdMonDecStageInfo::writeRT2Buffer().

Referenced by XrdMonDecPacketDecoder::decodeStagePacket().

void XrdMonDecSink::addUserId ( dictid_t  xrdId,
const char *  theString,
int  len,
senderid_t  senderId 
)

Definition at line 271 of file XrdMonDecSink.cc.

References _rtLogger, _uCache, _uMutex, _uniqueUserId, _verFreqCount, XrdMonBufferedOutput::add(), addVersion(), XrdMonDecUserInfo::CONNECT, XrdSysMutexHelper::Lock(), VER_FREQ, and XrdMonDecUserInfo::writeRT2Buffer().

Referenced by XrdMonDecPacketDecoder::decodeUserPacket().

void XrdMonDecSink::add ( dictid_t  xrdId,
XrdMonDecTraceInfo trace,
senderid_t  senderId 
)

Definition at line 308 of file XrdMonDecSink.cc.

References _dCache, _dMutex, _saveTraces, _tCache, _tCacheSize, flushTCache(), XrdSysMutexHelper::Lock(), registerLostPacket(), and XrdMonDecTraceInfo::setUniqueId().

Referenced by XrdMonDecPacketDecoder::decodeRWRequest().

void XrdMonDecSink::addUserDisconnect ( dictid_t  xrdId,
kXR_int32  sec,
kXR_int32  timestamp,
senderid_t  senderId 
)

Definition at line 353 of file XrdMonDecSink.cc.

References _rtLogger, _uCache, _uMutex, _verFreqCount, XrdMonBufferedOutput::add(), addVersion(), XrdMonDecUserInfo::DISCONNECT, XrdSysMutexHelper::Lock(), registerLostPacket(), and VER_FREQ.

Referenced by XrdMonDecPacketDecoder::decodeDisconnect().

void XrdMonDecSink::openFile ( dictid_t  dictId,
kXR_int32  timestamp,
senderid_t  senderId,
kXR_int64  fSize 
)

Definition at line 385 of file XrdMonDecSink.cc.

References _dCache, _dMutex, _rtLogger, _verFreqCount, XrdMonBufferedOutput::add(), addVersion(), XrdSysMutexHelper::Lock(), registerLostPacket(), and VER_FREQ.

Referenced by XrdMonDecPacketDecoder::decodeOpen().

void XrdMonDecSink::closeFile ( dictid_t  dictId,
kXR_int64  bytesR,
kXR_int64  bytesW,
kXR_int32  timestamp,
senderid_t  senderId 
)

Definition at line 419 of file XrdMonDecSink.cc.

References _dCache, _dMutex, _rtLogger, _verFreqCount, XrdMonBufferedOutput::add(), addVersion(), XrdSysMutexHelper::Lock(), registerLostPacket(), and VER_FREQ.

Referenced by XrdMonDecPacketDecoder::decodeClose().

void XrdMonDecSink::flushHistoryData (  ) 

Definition at line 785 of file XrdMonDecSink.cc.

References flushClosedDicts(), and flushUserCache().

Referenced by XrdMonDecPacketDecoder::flushHistoryData().

void XrdMonDecSink::flushRealTimeData (  )  [inline]

Definition at line 75 of file XrdMonDecSink.hh.

References _rtLogger, and XrdMonBufferedOutput::flush().

Referenced by XrdMonDecPacketDecoder::flushRealTimeData().

void XrdMonDecSink::reset ( senderid_t  senderId  ) 

Definition at line 793 of file XrdMonDecSink.cc.

References _dMutex, _uMutex, flushClosedDicts(), XrdSysMutexHelper::Lock(), resetDMap(), and resetUMap().

Referenced by XrdMonDecPacketDecoder::reset().

void XrdMonDecSink::initRT ( const char *  rtLogDir,
int  rtBufSize 
) [private]

Definition at line 155 of file XrdMonDecSink.cc.

References _rtFlagPath, _rtLogger, _rtMaxIdsPath, _uniqueDictId, _uniqueUserId, access, addVersion(), ERR_UNKNOWN, line, number, out, s, sprintf(), type, and unlink.

Referenced by XrdMonDecSink().

void XrdMonDecSink::addVersion (  )  [private]

Definition at line 870 of file XrdMonDecSink.cc.

References _rtLogger, XrdMonBufferedOutput::add(), buf, sprintf(), and XRDMON_VERSION.

Referenced by addStageInfo(), addUserDisconnect(), addUserId(), closeFile(), initRT(), and openFile().

void XrdMonDecSink::loadUniqueIdsAndSeq (  )  [private]

Definition at line 454 of file XrdMonDecSink.cc.

References _jnlPath, _lastSeq, _uniqueDictId, _uniqueUserId, access, buf, and int.

Referenced by XrdMonDecSink().

vector< XrdMonDecDictInfo * > XrdMonDecSink::loadActiveDictInfo (  )  [private]

Definition at line 744 of file XrdMonDecSink.cc.

References _jnlPath, access, buf, and fSize.

Referenced by init().

void XrdMonDecSink::flushClosedDicts (  )  [private]

Definition at line 480 of file XrdMonDecSink.cc.

References _dCache, _dictPath, _dMutex, buf, BUFSIZE, flushOneDMap(), i, XrdSysMutexHelper::Lock(), m, and out.

Referenced by flushHistoryData(), reset(), and ~XrdMonDecSink().

void XrdMonDecSink::flushUserCache (  )  [private]

Definition at line 546 of file XrdMonDecSink.cc.

References _uCache, _uMutex, _userPath, buf, BUFSIZE, flushOneUMap(), i, XrdSysMutexHelper::Lock(), and m.

Referenced by flushHistoryData().

void XrdMonDecSink::flushTCache (  )  [private]

Definition at line 614 of file XrdMonDecSink.cc.

References _tCache, buf, BUFSIZE, i, s, strcat(), strcpy(), and write2TraceFile().

Referenced by add(), and ~XrdMonDecSink().

void XrdMonDecSink::checkpoint (  )  [private]

Definition at line 653 of file XrdMonDecSink.cc.

Referenced by ~XrdMonDecSink().

void XrdMonDecSink::openTraceFile ( fstream &  f  )  [private]

Definition at line 712 of file XrdMonDecSink.cc.

Referenced by write2TraceFile().

void XrdMonDecSink::write2TraceFile ( fstream &  f,
const char *  buf,
int  len 
) [private]

Definition at line 726 of file XrdMonDecSink.cc.

References _maxTraceLogSize, _traceLogNumber, and openTraceFile().

Referenced by flushTCache().

void XrdMonDecSink::registerLostPacket ( dictid_t  id,
const char *  descr 
) [private]

Definition at line 773 of file XrdMonDecSink.cc.

References _lost.

Referenced by add(), addUserDisconnect(), closeFile(), and openFile().

void XrdMonDecSink::reportLostPackets (  )  [private]

Definition at line 837 of file XrdMonDecSink.cc.

References _lost, and size.

Referenced by ~XrdMonDecSink().

void XrdMonDecSink::flushOneDMap ( dmap_t m,
int &  curLen,
const int  BUFSIZE,
string buf,
fstream &  fD 
) [private]

Definition at line 509 of file XrdMonDecSink.cc.

References i, if(), and s.

Referenced by flushClosedDicts().

void XrdMonDecSink::flushOneUMap ( umap_t m,
int &  curLen,
const int  BUFSIZE,
string buf,
fstream &  fD 
) [private]

Definition at line 576 of file XrdMonDecSink.cc.

References i, if(), and s.

Referenced by flushUserCache().

void XrdMonDecSink::resetDMap ( senderid_t  senderId  )  [private]

Definition at line 809 of file XrdMonDecSink.cc.

References _dCache, and m.

Referenced by reset(), and ~XrdMonDecSink().

void XrdMonDecSink::resetUMap ( senderid_t  senderId  )  [private]

Definition at line 823 of file XrdMonDecSink.cc.

References _uCache, and m.

Referenced by reset(), and ~XrdMonDecSink().


Member Data Documentation

const kXR_unt16 XrdMonDecSink::VER_FREQ [static, private]

Definition at line 110 of file XrdMonDecSink.hh.

Referenced by addStageInfo(), addUserDisconnect(), addUserId(), closeFile(), and openFile().

kXR_unt16 XrdMonDecSink::_verFreqCount [private]

Definition at line 112 of file XrdMonDecSink.hh.

Referenced by addStageInfo(), addUserDisconnect(), addUserId(), closeFile(), and openFile().

vector< dmap_t* > XrdMonDecSink::_dCache [private]

Definition at line 115 of file XrdMonDecSink.hh.

Referenced by add(), addDictId(), closeFile(), flushClosedDicts(), openFile(), resetDMap(), and ~XrdMonDecSink().

vector< umap_t* > XrdMonDecSink::_uCache [private]

Definition at line 116 of file XrdMonDecSink.hh.

Referenced by addUserDisconnect(), addUserId(), flushUserCache(), resetUMap(), and ~XrdMonDecSink().

XrdSysMutex XrdMonDecSink::_dMutex [private]

Definition at line 121 of file XrdMonDecSink.hh.

Referenced by add(), addDictId(), closeFile(), flushClosedDicts(), openFile(), reset(), and ~XrdMonDecSink().

XrdSysMutex XrdMonDecSink::_uMutex [private]

Definition at line 122 of file XrdMonDecSink.hh.

Referenced by addUserDisconnect(), addUserId(), flushUserCache(), reset(), and ~XrdMonDecSink().

XrdMonBufferedOutput* XrdMonDecSink::_rtLogger [private]

Definition at line 124 of file XrdMonDecSink.hh.

Referenced by addStageInfo(), addUserDisconnect(), addUserId(), addVersion(), closeFile(), flushRealTimeData(), initRT(), openFile(), registerXrdRestart(), and ~XrdMonDecSink().

bool XrdMonDecSink::_saveTraces [private]

Definition at line 126 of file XrdMonDecSink.hh.

Referenced by add(), and XrdMonDecSink().

TraceVector XrdMonDecSink::_tCache [private]

Definition at line 128 of file XrdMonDecSink.hh.

Referenced by add(), flushTCache(), and XrdMonDecSink().

kXR_unt32 XrdMonDecSink::_tCacheSize [private]

Definition at line 129 of file XrdMonDecSink.hh.

Referenced by add(), and XrdMonDecSink().

kXR_unt16 XrdMonDecSink::_traceLogNumber [private]

Definition at line 130 of file XrdMonDecSink.hh.

Referenced by write2TraceFile().

kXR_int64 XrdMonDecSink::_maxTraceLogSize [private]

Definition at line 131 of file XrdMonDecSink.hh.

Referenced by write2TraceFile().

map<dictid_t, long> XrdMonDecSink::_lost [private]

Definition at line 133 of file XrdMonDecSink.hh.

Referenced by registerLostPacket(), reportLostPackets(), and ~XrdMonDecSink().

sequen_t XrdMonDecSink::_lastSeq [private]

Definition at line 135 of file XrdMonDecSink.hh.

Referenced by lastSeq(), loadUniqueIdsAndSeq(), and setLastSeq().

dictid_t XrdMonDecSink::_uniqueDictId [private]

Definition at line 136 of file XrdMonDecSink.hh.

Referenced by addDictId(), addStageInfo(), initRT(), loadUniqueIdsAndSeq(), and ~XrdMonDecSink().

dictid_t XrdMonDecSink::_uniqueUserId [private]

Definition at line 137 of file XrdMonDecSink.hh.

Referenced by addUserId(), initRT(), loadUniqueIdsAndSeq(), and ~XrdMonDecSink().

string XrdMonDecSink::_path [private]

Definition at line 139 of file XrdMonDecSink.hh.

Referenced by XrdMonDecSink().

string XrdMonDecSink::_jnlPath [private]

Definition at line 140 of file XrdMonDecSink.hh.

Referenced by loadActiveDictInfo(), loadUniqueIdsAndSeq(), and XrdMonDecSink().

string XrdMonDecSink::_dictPath [private]

Definition at line 141 of file XrdMonDecSink.hh.

Referenced by flushClosedDicts(), and XrdMonDecSink().

string XrdMonDecSink::_userPath [private]

Definition at line 142 of file XrdMonDecSink.hh.

Referenced by flushUserCache(), and XrdMonDecSink().

string XrdMonDecSink::_rtFlagPath [private]

Definition at line 143 of file XrdMonDecSink.hh.

Referenced by initRT(), and ~XrdMonDecSink().

string XrdMonDecSink::_rtMaxIdsPath [private]

Definition at line 144 of file XrdMonDecSink.hh.

Referenced by initRT(), and ~XrdMonDecSink().

string XrdMonDecSink::_xrdRestartLog [private]

Definition at line 145 of file XrdMonDecSink.hh.

Referenced by registerXrdRestart(), and XrdMonDecSink().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:35 2011 for ROOT_528-00b_version by  doxygen 1.5.1