xrootd
|
#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 { ACTIVE, PERMANENT } |
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) |
enum XrdMonCtrWriter::LogType [private] |
XrdMonCtrWriter::XrdMonCtrWriter | ( | senderid_t | senderId, |
kXR_int32 | stod | ||
) |
References _bufferSize, _sender, _timestamp, generateTimestamp(), and XrdMonSenderInfo::id2HostPort().
XrdMonCtrWriter::~XrdMonCtrWriter | ( | ) |
References _buffer, closeLog(), flushBuffer(), and publish().
bool XrdMonCtrWriter::bufferIsFull | ( | packetlen_t | x | ) | [inline, private] |
References _bPos, and _bufferSize.
Referenced by operator()().
void XrdMonCtrWriter::closeLog | ( | ) | [private] |
References _file.
Referenced by flushBuffer(), and ~XrdMonCtrWriter().
void XrdMonCtrWriter::flushBuffer | ( | ) | [private] |
References _bPos, _buffer, _bufferSize, _file, closeLog(), logIsFull(), logIsOpen(), openLog(), and publish().
Referenced by operator()(), and ~XrdMonCtrWriter().
void XrdMonCtrWriter::forceClose | ( | ) |
long XrdMonCtrWriter::lastActivity | ( | ) | const [inline] |
References _lastActivity.
bool XrdMonCtrWriter::logIsFull | ( | ) | [inline, private] |
References _file, and _maxLogSize.
Referenced by flushBuffer().
bool XrdMonCtrWriter::logIsOpen | ( | ) | [inline, private] |
References _file.
Referenced by flushBuffer().
string XrdMonCtrWriter::logName | ( | LogType | t | ) | const [private] |
References _baseDir, _sender, _timestamp, ACTIVE, ERR_INVALIDARG, and PERMANENT.
void XrdMonCtrWriter::mkActiveLogNameDirs | ( | ) | const [private] |
References _baseDir, _sender, and mkdirIfNecessary().
Referenced by openLog().
void XrdMonCtrWriter::openLog | ( | ) | [private] |
References _file, ACTIVE, logName(), and mkActiveLogNameDirs().
Referenced by flushBuffer().
void XrdMonCtrWriter::operator() | ( | const char * | packet, |
const XrdMonHeader & | header, | ||
long | currentTime | ||
) |
kXR_int32 XrdMonCtrWriter::prevStod | ( | ) | const [inline] |
References _prevStod.
Referenced by XrdMonCtrArchiver::archivePacket().
void XrdMonCtrWriter::publish | ( | ) | [private] |
References _bPos, _timestamp, access(), ACTIVE, ERR_RENAME, generateTimestamp(), logName(), PERMANENT, and rename().
Referenced by flushBuffer(), and ~XrdMonCtrWriter().
static void XrdMonCtrWriter::setBaseDir | ( | const char * | dir | ) | [inline, static] |
References _baseDir.
Referenced by XrdMonCtrArchiver::XrdMonCtrArchiver().
static void XrdMonCtrWriter::setBufferSize | ( | int | size | ) | [inline, static] |
References _bufferSize.
Referenced by XrdMonCtrArchiver::XrdMonCtrArchiver().
static void XrdMonCtrWriter::setMaxLogSize | ( | kXR_int64 | size | ) | [inline, static] |
References _maxLogSize.
Referenced by XrdMonCtrArchiver::XrdMonCtrArchiver().
ostream& operator<< | ( | ostream & | o, |
const XrdMonCtrWriter & | w | ||
) | [friend] |
string XrdMonCtrWriter::_baseDir [static, private] |
Referenced by logName(), mkActiveLogNameDirs(), and setBaseDir().
kXR_int32 XrdMonCtrWriter::_bPos [private] |
Referenced by bufferIsFull(), flushBuffer(), operator()(), and publish().
char* XrdMonCtrWriter::_buffer [private] |
Referenced by flushBuffer(), operator()(), and ~XrdMonCtrWriter().
kXR_int32 XrdMonCtrWriter::_bufferSize [static, private] |
Referenced by bufferIsFull(), flushBuffer(), operator()(), setBufferSize(), and XrdMonCtrWriter().
fstream XrdMonCtrWriter::_file [private] |
Referenced by closeLog(), flushBuffer(), logIsFull(), logIsOpen(), and openLog().
long XrdMonCtrWriter::_lastActivity [private] |
Referenced by lastActivity(), and operator()().
kXR_int64 XrdMonCtrWriter::_maxLogSize [static, private] |
Referenced by logIsFull(), and setMaxLogSize().
kXR_int32 XrdMonCtrWriter::_prevStod [private] |
Referenced by prevStod().
hp_t XrdMonCtrWriter::_sender [private] |
Referenced by logName(), mkActiveLogNameDirs(), operator<<(), and XrdMonCtrWriter().
string XrdMonCtrWriter::_timestamp [private] |
Referenced by logName(), publish(), and XrdMonCtrWriter().
long XrdMonCtrWriter::_totalArchived [static, private] |