CppLogging 1.0.6.0
C++ Logging Library
Loading...
Searching...
No Matches
CppLogging::SyncProcessor Class Reference

Synchronous logging processor. More...

#include <sync_processor.h>

Inheritance diagram for CppLogging::SyncProcessor:
CppLogging::Processor CppLogging::Element

Public Member Functions

 SyncProcessor (const std::shared_ptr< Layout > &layout)
 Initialize synchronous logging processor with a given layout interface.
 SyncProcessor (const SyncProcessor &)=delete
 SyncProcessor (SyncProcessor &&)=delete
virtual ~SyncProcessor ()=default
SyncProcessoroperator= (const SyncProcessor &)=delete
SyncProcessoroperator= (SyncProcessor &&)=delete
bool ProcessRecord (Record &record) override
 Process the given logging record through all child filters, layouts and appenders.
void Flush () override
 Flush the current logging processor.
Public Member Functions inherited from CppLogging::Processor
 Processor (const std::shared_ptr< Layout > &layout)
 Initialize logging processor with a given layout interface.
 Processor (const Processor &)=delete
 Processor (Processor &&) noexcept=delete
virtual ~Processor ()
Processoroperator= (const Processor &)=delete
Processoroperator= (Processor &&) noexcept=delete
std::shared_ptr< Layout > & layout () noexcept
 Get the logging processor layout.
std::vector< std::shared_ptr< Filter > > & filters () noexcept
 Get collection of child filters.
std::vector< std::shared_ptr< Appender > > & appenders () noexcept
 Get collection of child appenders.
std::vector< std::shared_ptr< Processor > > & processors () noexcept
 Get collection of child processors.
bool IsStarted () const noexcept override
 Is the logging processor started?
bool Start () override
 Start the logging processor.
bool Stop () override
 Stop the logging processor.
virtual bool FilterRecord (Record &record)
 Filter the given logging record.

Additional Inherited Members

Protected Attributes inherited from CppLogging::Processor
std::atomic< bool > _started {true}
std::shared_ptr< Layout_layout
std::vector< std::shared_ptr< Filter > > _filters
std::vector< std::shared_ptr< Appender > > _appenders
std::vector< std::shared_ptr< Processor > > _processors

Detailed Description

Synchronous logging processor.

Synchronous logging processor process the given logging record under the critical section to avoid races in not thread-safe layouts, filters and appenders.

Thread-safe.

Definition at line 26 of file sync_processor.h.

Constructor & Destructor Documentation

◆ SyncProcessor() [1/3]

CppLogging::SyncProcessor::SyncProcessor ( const std::shared_ptr< Layout > & layout)
inlineexplicit

Initialize synchronous logging processor with a given layout interface.

Parameters
layout- Logging layout interface

Definition at line 33 of file sync_processor.h.

◆ SyncProcessor() [2/3]

CppLogging::SyncProcessor::SyncProcessor ( const SyncProcessor & )
delete

◆ SyncProcessor() [3/3]

CppLogging::SyncProcessor::SyncProcessor ( SyncProcessor && )
delete

◆ ~SyncProcessor()

virtual CppLogging::SyncProcessor::~SyncProcessor ( )
virtualdefault

Member Function Documentation

◆ Flush()

void CppLogging::SyncProcessor::Flush ( )
overridevirtual

Flush the current logging processor.

Default behavior of the method will flush in the following sequence:

  • all appenders (if any present)
  • all sub processors (if any present)

Reimplemented from CppLogging::Processor.

Definition at line 21 of file sync_processor.cpp.

◆ operator=() [1/2]

SyncProcessor & CppLogging::SyncProcessor::operator= ( const SyncProcessor & )
delete

◆ operator=() [2/2]

SyncProcessor & CppLogging::SyncProcessor::operator= ( SyncProcessor && )
delete

◆ ProcessRecord()

bool CppLogging::SyncProcessor::ProcessRecord ( Record & record)
overridevirtual

Process the given logging record through all child filters, layouts and appenders.

Default behavior of the method will take the given logging record and process it in the following sequence:

  • all filters (if any present)
  • all layouts (if any present)
  • all appenders (if any present)
  • all sub processors (if any present)
Parameters
record- Logging record
Returns
'true' if the logging record was successfully processed, 'false' if the logging record was filtered out

Reimplemented from CppLogging::Processor.

Definition at line 13 of file sync_processor.cpp.


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