Qore Logger Module Reference 0.4
Loading...
Searching...
No Matches
Logger::LoggerAppenderWithLayout Class Reference

Implements an appender with a layout. More...

#include <Logger.qm.dox.h>

Inheritance diagram for Logger::LoggerAppenderWithLayout:
[legend]

Public Member Methods

 constructor (*string name, LoggerLayout layout)
 Creates the object. More...
 
LoggerLayout getLayout ()
 Returns the layout for the appender.
 
 setLayout (LoggerLayout layout)
 Assigns a layout to the appender. More...
 
- Public Member Methods inherited from Logger::LoggerAppender
 addFilter (LoggerFilter filter, bool top=False)
 Adds a filter to the chain. More...
 
 close ()
 Releases any resources allocated by the appender and closes it.
 
 constructor (*string name)
 Creates the object. More...
 
list< LoggerFiltergetFilters ()
 Returns the filter chain as a list. More...
 
string getName ()
 Returns the appender name.
 
*LoggerAppenderQueue getQueue ()
 Returns async queue or NOTHING when events are processed synchronously.
 
bool isOpen ()
 Returns True if the appender is open and therefore active.
 
 open ()
 Opens logging resources. More...
 
bool post (LoggerEvent event)
 Posts the given event to the output queue. More...
 
 processEvent (int type, auto params)
 Processes an event to the physical target. More...
 
abstract processEventImpl (int type, auto params)
 Processes the event to the physical target. More...
 
 removeAllFilters ()
 Clears the filter chain by removing all filters.
 
 removeFilter (LoggerFilter filter)
 Removes the given filter from the filter chain. More...
 
 setQueue (*LoggerAppenderQueue queue)
 Sets the appender queue. More...
 

Private Member Methods

auto serializeImpl (LoggerEvent event)
 Returns the value formatted using the layout pattern. More...
 
- Private Member Methods inherited from Logger::LoggerAppender
*object ensureAtomicOperations (int type)
 Returns an object that can be used to ensure atomic operations for appender operations.
 
RWLock lock ()
 The lock to ensure proper serialization with concurrent access.
 
bool pushEvent (int type, auto params)
 Pushes the given event on the queue or calls processEvent() in case of synchronous processing. More...
 
abstract auto serializeImpl (LoggerEvent event)
 Serializes the given event to put in the queue or write to the target device. More...
 

Private:Internal Attributes

LoggerLayout layout
 assigned layout
 

Additional Inherited Members

- Public Attributes inherited from Logger::LoggerAppender
const EVENT_CLOSE = 3
 close event
 
const EVENT_LOG = 2
 logging event
 
const EVENT_OPEN = 1
 open event
 

Detailed Description

Implements an appender with a layout.

The layout is responsible for formatting the LoggerEvent according to the user's wishes, whereas an appender takes care of sending the formatted output to its destination.

It is used typically for appenders implementing logging to a file

Member Function Documentation

◆ constructor()

Logger::LoggerAppenderWithLayout::constructor ( *string  name,
LoggerLayout  layout 
)

Creates the object.

Parameters
namethe name of the appender
layoutthe layout for the appender

◆ serializeImpl()

auto Logger::LoggerAppenderWithLayout::serializeImpl ( LoggerEvent  event)
privatevirtual

Returns the value formatted using the layout pattern.

Parameters
eventthe event to serialize

Implements Logger::LoggerAppender.

◆ setLayout()

Logger::LoggerAppenderWithLayout::setLayout ( LoggerLayout  layout)

Assigns a layout to the appender.

Parameters
layoutthe layout for the appender