xrootd
Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
XrdMonDecSink Class Reference

#include <XrdMonDecSink.hh>

Collaboration diagram for XrdMonDecSink:
Collaboration graph
[legend]

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
< XrdMonDecTraceInfo
TraceVector
 

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 = 1000
 

Member Typedef Documentation

typedef map<dictid_t, XrdMonDecDictInfo*>::iterator XrdMonDecSink::dmapitr_t
private
typedef map<dictid_t, XrdMonDecUserInfo*>::iterator XrdMonDecSink::umapitr_t
private

Constructor & Destructor Documentation

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

Member Function Documentation

void XrdMonDecSink::add ( dictid_t  xrdId,
XrdMonDecTraceInfo trace,
senderid_t  senderId 
)
void XrdMonDecSink::addDictId ( dictid_t  xrdId,
const char *  theString,
int  len,
senderid_t  senderId 
)
void XrdMonDecSink::addStageInfo ( dictid_t  xrdId,
const char *  theString,
int  len,
senderid_t  senderId 
)
void XrdMonDecSink::addUserDisconnect ( dictid_t  xrdId,
kXR_int32  sec,
kXR_int32  timestamp,
senderid_t  senderId 
)
void XrdMonDecSink::addUserId ( dictid_t  xrdId,
const char *  theString,
int  len,
senderid_t  senderId 
)
void XrdMonDecSink::addVersion ( )
private
void XrdMonDecSink::checkpoint ( )
private

Referenced by ~XrdMonDecSink().

void XrdMonDecSink::closeFile ( dictid_t  dictId,
kXR_int64  bytesR,
kXR_int64  bytesW,
kXR_int32  timestamp,
senderid_t  senderId 
)
void XrdMonDecSink::flushClosedDicts ( )
private
void XrdMonDecSink::flushHistoryData ( )
void XrdMonDecSink::flushOneDMap ( dmap_t m,
int &  curLen,
const int  BUFSIZE,
string &  buf,
fstream &  fD 
)
private
void XrdMonDecSink::flushOneUMap ( umap_t m,
int &  curLen,
const int  BUFSIZE,
string &  buf,
fstream &  fD 
)
private
void XrdMonDecSink::flushRealTimeData ( )
inline
void XrdMonDecSink::flushTCache ( )
private

References _tCache, and write2TraceFile().

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

void XrdMonDecSink::flushUserCache ( )
private
void XrdMonDecSink::init ( dictid_t  min,
dictid_t  max,
const string &  senderHP 
)
void XrdMonDecSink::initRT ( const char *  rtLogDir,
int  rtBufSize 
)
private
sequen_t XrdMonDecSink::lastSeq ( ) const
inline

References _lastSeq.

Referenced by XrdMonDecPacketDecoder::lastSeq().

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

References _jnlPath, and access().

Referenced by init().

void XrdMonDecSink::loadUniqueIdsAndSeq ( )
private
void XrdMonDecSink::openFile ( dictid_t  dictId,
kXR_int32  timestamp,
senderid_t  senderId,
kXR_int64  fSize 
)
void XrdMonDecSink::openTraceFile ( fstream &  f)
private

Referenced by write2TraceFile().

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

References _lost.

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

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

References _lost.

Referenced by ~XrdMonDecSink().

void XrdMonDecSink::reset ( senderid_t  senderId)
void XrdMonDecSink::resetDMap ( senderid_t  senderId)
private

References _dCache.

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

void XrdMonDecSink::resetUMap ( senderid_t  senderId)
private

References _uCache.

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

void XrdMonDecSink::setLastSeq ( sequen_t  seq)
inline

References _lastSeq.

Referenced by XrdMonDecPacketDecoder::operator()().

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

Member Data Documentation

vector< dmap_t* > XrdMonDecSink::_dCache
private
string XrdMonDecSink::_dictPath
private

Referenced by flushClosedDicts(), and XrdMonDecSink().

XrdSysMutex XrdMonDecSink::_dMutex
private
string XrdMonDecSink::_jnlPath
private
sequen_t XrdMonDecSink::_lastSeq
private
map<dictid_t, long> XrdMonDecSink::_lost
private
kXR_int64 XrdMonDecSink::_maxTraceLogSize
private

Referenced by write2TraceFile().

string XrdMonDecSink::_path
private

Referenced by XrdMonDecSink().

string XrdMonDecSink::_rtFlagPath
private

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

XrdMonBufferedOutput* XrdMonDecSink::_rtLogger
private
string XrdMonDecSink::_rtMaxIdsPath
private

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

bool XrdMonDecSink::_saveTraces
private

Referenced by add(), and XrdMonDecSink().

TraceVector XrdMonDecSink::_tCache
private

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

kXR_unt32 XrdMonDecSink::_tCacheSize
private

Referenced by add(), and XrdMonDecSink().

kXR_unt16 XrdMonDecSink::_traceLogNumber
private

Referenced by write2TraceFile().

vector< umap_t* > XrdMonDecSink::_uCache
private
XrdSysMutex XrdMonDecSink::_uMutex
private
dictid_t XrdMonDecSink::_uniqueDictId
private
dictid_t XrdMonDecSink::_uniqueUserId
private
string XrdMonDecSink::_userPath
private

Referenced by flushUserCache(), and XrdMonDecSink().

kXR_unt16 XrdMonDecSink::_verFreqCount
private
string XrdMonDecSink::_xrdRestartLog
private
const kXR_unt16 XrdMonDecSink::VER_FREQ = 1000
staticprivate

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