WvStreams
Classes | Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes
WvLogBuffer Class Reference

WvLogBuffer is a descendant of WvLogRcv that buffers log messages for later use. More...

#include <wvlogbuffer.h>

Inheritance diagram for WvLogBuffer:
Inheritance graph
[legend]

List of all members.

Classes

class  Msg
class  MsgCounter

Public Member Functions

 DeclareWvList (Msg)
 DeclareWvDict (MsgCounter, WvString, src_lvl)
 WvLogBuffer (int _max_lines, WvLog::LogLevel _max_level=WvLog::NUM_LOGLEVELS)
MsgList & messages ()
void feed_receiver (WvLogRcv &receiver)
void dump (WvStream &s)
virtual void log (WvStringParm source, int loglevel, const char *_buf, size_t len)
void end_line ()
WvLog::LogLevel level () const
void level (WvLog::LogLevel lvl)
bool set_custom_levels (WvString descr)

Public Attributes

bool force_new_line

Static Public Attributes

static const char * loglevels [WvLog::NUM_LOGLEVELS]

Protected Member Functions

void handle_msg (Msg *lastmsg)
virtual void _begin_line ()
 Start a new log line (print prefix)
virtual void _mid_line (const char *str, size_t len)
 add text to the current log line.
virtual void _end_line ()
 End this (Guaranteed NonEmpty) log line.
 DeclareWvScatterDict (Src_Lvl, WvString, src)
virtual void _make_prefix (time_t now)
 Set the Prefix and Prefix Length (size_t prelen)
const char * appname (WvStringParm log) const

Protected Attributes

MsgList msgs
MsgCounterDict counters
WvDynBuf current
int max_lines
WvString last_source
WvLog::LogLevel max_level
WvLog::LogLevel last_level
time_t last_time
bool at_newline
WvString prefix
size_t prelen
Src_LvlDict custom_levels

Detailed Description

WvLogBuffer is a descendant of WvLogRcv that buffers log messages for later use.

It only keeps up to max_lines log entries for every source/debug level, s.t. debug level <= max_level

Definition at line 17 of file wvlogbuffer.h.


Member Function Documentation

void WvLogBuffer::_mid_line ( const char *  str,
size_t  len 
) [protected, virtual]

add text to the current log line.

'str' may contain only one '
' optional character at str[len-1] (the end); if it does, end_line will be called immediately after this function.

Implements WvLogRcv.

Definition at line 48 of file wvlogbuffer.cc.


Member Data Documentation

const char * WvLogRcv::loglevels [static, inherited]
Initial value:
 {
    "Crit",
    "Err",
    "Warn",
    "Notice",
    "Info",
    "*1",
    "*2",
    "*3",
    "*4",
    "*5",
}

Definition at line 78 of file wvlogrcv.h.


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