#include <XrdMonCtrWriter.hh>
Public Member Functions | |
XrdMonCtrWriter (senderid_t senderId, kXR_int32 stod) | |
~XrdMonCtrWriter () | |
void | operator() (const char *packet, const XrdMonHeader &header, long currentTime) |
kXR_int32 | prevStod () const |
void | forceClose () |
long | lastActivity () const |
Static Public Member Functions | |
static void | setBaseDir (const char *dir) |
static void | setMaxLogSize (kXR_int64 size) |
static void | setBufferSize (int size) |
Private Types | |
enum | LogType |
Private Member Functions | |
bool | logIsOpen () |
bool | logIsFull () |
bool | bufferIsFull (packetlen_t x) |
string | logName (LogType t) const |
void | mkActiveLogNameDirs () const |
void | flushBuffer () |
void | openLog () |
void | closeLog () |
void | publish () |
Private Attributes | |
kXR_int32 | _prevStod |
string | _timestamp |
hp_t | _sender |
char * | _buffer |
kXR_int32 | _bPos |
fstream | _file |
long | _lastActivity |
Static Private Attributes | |
static string | _baseDir |
static kXR_int64 | _maxLogSize |
static int | _bufferSize |
static long | _totalArchived |
Friends | |
ostream & | operator<< (ostream &o, const XrdMonCtrWriter &w) |
Definition at line 30 of file XrdMonCtrWriter.hh.
enum XrdMonCtrWriter::LogType [private] |
Definition at line 48 of file XrdMonCtrWriter.hh.
XrdMonCtrWriter::XrdMonCtrWriter | ( | senderid_t | senderId, | |
kXR_int32 | stod | |||
) |
Definition at line 41 of file XrdMonCtrWriter.cc.
References _bufferSize, _sender, _timestamp, generateTimestamp(), and XrdMonSenderInfo::id2HostPort().
XrdMonCtrWriter::~XrdMonCtrWriter | ( | ) |
Definition at line 54 of file XrdMonCtrWriter.cc.
References _buffer, closeLog(), flushBuffer(), and publish().
void XrdMonCtrWriter::operator() | ( | const char * | packet, | |
const XrdMonHeader & | header, | |||
long | currentTime | |||
) |
Definition at line 63 of file XrdMonCtrWriter.cc.
References _bPos, _buffer, _bufferSize, _lastActivity, XrdMonCtrDebug::_mutex, bufferIsFull(), ERR_NOMEM, flushBuffer(), XrdSysMutexHelper::Lock(), XrdMonHeader::packetLen(), XrdMonCtrDebug::Receiving, and XrdMonCtrDebug::verbose().
kXR_int32 XrdMonCtrWriter::prevStod | ( | ) | const [inline] |
void XrdMonCtrWriter::forceClose | ( | ) |
Definition at line 97 of file XrdMonCtrWriter.cc.
long XrdMonCtrWriter::lastActivity | ( | ) | const [inline] |
static void XrdMonCtrWriter::setBaseDir | ( | const char * | dir | ) | [inline, static] |
Definition at line 43 of file XrdMonCtrWriter.hh.
References _baseDir.
Referenced by XrdMonCtrArchiver::XrdMonCtrArchiver().
static void XrdMonCtrWriter::setMaxLogSize | ( | kXR_int64 | size | ) | [inline, static] |
Definition at line 44 of file XrdMonCtrWriter.hh.
References _maxLogSize.
Referenced by XrdMonCtrArchiver::XrdMonCtrArchiver().
static void XrdMonCtrWriter::setBufferSize | ( | int | size | ) | [inline, static] |
Definition at line 45 of file XrdMonCtrWriter.hh.
References _bufferSize.
Referenced by XrdMonCtrArchiver::XrdMonCtrArchiver().
bool XrdMonCtrWriter::logIsOpen | ( | ) | [inline, private] |
bool XrdMonCtrWriter::logIsFull | ( | ) | [inline, private] |
Definition at line 51 of file XrdMonCtrWriter.hh.
References _file, and _maxLogSize.
Referenced by flushBuffer().
bool XrdMonCtrWriter::bufferIsFull | ( | packetlen_t | x | ) | [inline, private] |
Definition at line 52 of file XrdMonCtrWriter.hh.
References _bPos, and _bufferSize.
Referenced by operator()().
Definition at line 143 of file XrdMonCtrWriter.cc.
References _baseDir, _sender, _timestamp, ACTIVE, buf, ERR_INVALIDARG, PERMANENT, s, and sprintf().
void XrdMonCtrWriter::mkActiveLogNameDirs | ( | ) | const [private] |
Definition at line 129 of file XrdMonCtrWriter.cc.
References _baseDir, _sender, b, mkdirIfNecessary(), and sprintf().
Referenced by openLog().
void XrdMonCtrWriter::flushBuffer | ( | ) | [private] |
Definition at line 107 of file XrdMonCtrWriter.cc.
References _bPos, _buffer, _bufferSize, _file, closeLog(), logIsFull(), logIsOpen(), openLog(), and publish().
Referenced by operator()(), and ~XrdMonCtrWriter().
void XrdMonCtrWriter::openLog | ( | ) | [private] |
Definition at line 163 of file XrdMonCtrWriter.cc.
References _file, ACTIVE, logName(), mkActiveLogNameDirs(), and out.
Referenced by flushBuffer().
void XrdMonCtrWriter::closeLog | ( | ) | [private] |
Definition at line 170 of file XrdMonCtrWriter.cc.
References _file.
Referenced by flushBuffer(), and ~XrdMonCtrWriter().
void XrdMonCtrWriter::publish | ( | ) | [private] |
Definition at line 178 of file XrdMonCtrWriter.cc.
References _bPos, _timestamp, access, ACTIVE, ERR_RENAME, generateTimestamp(), logName(), PERMANENT, and rename.
Referenced by flushBuffer(), and ~XrdMonCtrWriter().
ostream& operator<< | ( | ostream & | o, | |
const XrdMonCtrWriter & | w | |||
) | [friend] |
Definition at line 196 of file XrdMonCtrWriter.cc.
string XrdMonCtrWriter::_baseDir [static, private] |
Definition at line 63 of file XrdMonCtrWriter.hh.
Referenced by logName(), mkActiveLogNameDirs(), and setBaseDir().
kXR_int64 XrdMonCtrWriter::_maxLogSize [static, private] |
kXR_int32 XrdMonCtrWriter::_bufferSize [static, private] |
Definition at line 65 of file XrdMonCtrWriter.hh.
Referenced by bufferIsFull(), flushBuffer(), operator()(), setBufferSize(), and XrdMonCtrWriter().
long XrdMonCtrWriter::_totalArchived [static, private] |
Definition at line 66 of file XrdMonCtrWriter.hh.
kXR_int32 XrdMonCtrWriter::_prevStod [private] |
string XrdMonCtrWriter::_timestamp [private] |
Definition at line 70 of file XrdMonCtrWriter.hh.
Referenced by logName(), publish(), and XrdMonCtrWriter().
hp_t XrdMonCtrWriter::_sender [private] |
Definition at line 71 of file XrdMonCtrWriter.hh.
Referenced by logName(), mkActiveLogNameDirs(), and XrdMonCtrWriter().
char* XrdMonCtrWriter::_buffer [private] |
Definition at line 72 of file XrdMonCtrWriter.hh.
Referenced by flushBuffer(), operator()(), and ~XrdMonCtrWriter().
kXR_int32 XrdMonCtrWriter::_bPos [private] |
Definition at line 73 of file XrdMonCtrWriter.hh.
Referenced by bufferIsFull(), flushBuffer(), operator()(), and publish().
fstream XrdMonCtrWriter::_file [private] |
Definition at line 74 of file XrdMonCtrWriter.hh.
Referenced by closeLog(), flushBuffer(), logIsFull(), logIsOpen(), and openLog().
long XrdMonCtrWriter::_lastActivity [private] |