OrocosComponentLibrary  2.8.3
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RollingFileAppender Class Reference
Inheritance diagram for RollingFileAppender:
Appender

Public Member Functions

 RollingFileAppender (std::string name)
 
virtual bool configureLayout ()
 Optionally create a layout according to layoutName and layoutPattern. More...
 
virtual bool startHook ()
 ensure port is connected before we start More...
 
virtual void stopHook ()
 Drain the buffer.
 
virtual void drainBuffer ()
 Process all remaining events in buffer.
 

Protected Member Functions

virtual bool configureHook ()
 Create log4cpp appender.
 
virtual void updateHook ()
 Process at most maxEventsPerCycle event.
 
virtual void cleanupHook ()
 Destroy appender.
 
virtual void processEvents (int n)
 Process up n events. More...
 

Protected Attributes

RTT::Property< std::string > filename_prop
 Name of file to append to.
 
RTT::Property< int > maxFileSize_prop
 Maximum file size (in bytes) before rolling over.
 
RTT::Property< int > maxBackupIndex_prop
 Maximum number of backup files to keep.
 
RTT::Property< int > maxEventsPerCycle_prop
 Property to set maximum number of log events to pop per cycle.
 
int maxEventsPerCycle
 Maximum number of log events to pop per cycle. More...
 
RTT::InputPort< OCL::logging::LoggingEventlog_port
 Port we receive logging events on Initially unconnected. More...
 
log4cpp::Appender * appender
 Appender created by derived class.
 
RTT::Property< std::string > layoutName_prop
 Layout name (e.g. "simple", "basic", "pattern")
 
RTT::Property< std::string > layoutPattern_prop
 Layout conversion pattern (for those layouts that use a pattern)
 
unsigned int countMaxPopped
 

Detailed Description

Definition at line 10 of file RollingFileAppender.hpp.

Member Function Documentation

bool configureLayout ( )
virtualinherited

Optionally create a layout according to layoutName and layoutPattern.

Precondition
!appender, if you want a layout to actually be created
Returns
true if not layout or no appender or a layout was created successfully, otherwise false
Todo:
ensure "" != layoutPattern?

Definition at line 29 of file Appender.cpp.

void processEvents ( int  n)
protectedvirtualinherited

Process up n events.

Parameters
nif 0 ==n then process events until buffer is empty, otherwise process at most n events
Precondition
0 <= n (otherwise acts as though n==1)

Definition at line 104 of file Appender.cpp.

References LoggingEvent::toLog4cpp().

bool startHook ( )
virtualinherited

ensure port is connected before we start

Todo:
input ports must be connected?

Definition at line 69 of file Appender.cpp.

Member Data Documentation

RTT::InputPort<OCL::logging::LoggingEvent> log_port
protectedinherited

Port we receive logging events on Initially unconnected.

The logging service connects appenders.

Definition at line 47 of file Appender.hpp.

Referenced by Category::callAppenders(), and Category::connectToLogPort().

int maxEventsPerCycle
protected

Maximum number of log events to pop per cycle.

Defaults to 1.

A value of 0 indicates to not limit the number of events per cycle. With enough event production, this could lead to thread starvation!

Definition at line 43 of file RollingFileAppender.hpp.


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