LiteFX 0.4.1.2025
Computer Graphics Engine
Loading...
Searching...
No Matches
LiteFX::Logging::RollingFileSink Class Reference

Writes log messages to a rolling file. More...

#include <logging.hpp>

Inherits LiteFX::Logging::ISink.

Classes

class  RollingFileSinkImpl
 

Public Member Functions

 RollingFileSink (const String &fileName, LogLevel level=LogLevel::Info, const String &pattern="%+", bool truncate=false, int maxFiles=0)
 Creates a new rolling file sink instance.
 
 ~RollingFileSink () noexcept override
 
 RollingFileSink (const RollingFileSink &)=delete
 
 RollingFileSink (RollingFileSink &&) noexcept=delete
 
auto operator= (const RollingFileSink &)=delete
 
auto operator= (RollingFileSink &&) noexcept=delete
 
LogLevel getLevel () const override
 Gets the minimum log level for messages to get written to the log.
 
String getName () const override
 Gets the name of the sink.
 
String getPattern () const override
 Gets the pattern used to format the messages for the sink.
 
virtual String getFileName () const
 Gets the file name of the log file.
 
virtual bool getTruncate () const
 Returns true, if the log messages should be truncated to the contents of the file, or false if existing messages are overwritten.
 
virtual int getMaxFiles () const
 Returns the maximum number of log files to keep.
 
- Public Member Functions inherited from LiteFX::Logging::ISink
virtual ~ISink () noexcept=default
 

Protected Member Functions

spdlog::sink_ptr get () const override
 
- Protected Member Functions inherited from LiteFX::Logging::ISink
 ISink () noexcept=default
 
 ISink (const ISink &)=default
 
 ISink (ISink &&) noexcept=default
 
ISinkoperator= (const ISink &)=default
 
ISinkoperator= (ISink &&) noexcept=default
 

Detailed Description

Writes log messages to a rolling file.

Constructor & Destructor Documentation

◆ RollingFileSink() [1/3]

RollingFileSink::RollingFileSink ( const String & fileName,
LogLevel level = LogLevel::Info,
const String & pattern = "%+",
bool truncate = false,
int maxFiles = 0 )

Creates a new rolling file sink instance.

Parameters
fileNameThe name of the log file.
levelThe minimum log level for messages to be saved to the file.
patternThe default format for log messages.
truncatetrue, if the log messages should be truncated to the contents of the file. false to overwrite existing messages.
maxFilesThe maximum number of files to keep.

◆ ~RollingFileSink()

RollingFileSink::~RollingFileSink ( )
overridedefaultnoexcept

◆ RollingFileSink() [2/3]

LiteFX::Logging::RollingFileSink::RollingFileSink ( const RollingFileSink & )
delete

◆ RollingFileSink() [3/3]

LiteFX::Logging::RollingFileSink::RollingFileSink ( RollingFileSink && )
deletenoexcept

Member Function Documentation

◆ get()

spdlog::sink_ptr RollingFileSink::get ( ) const
overrideprotectedvirtual

◆ getFileName()

String RollingFileSink::getFileName ( ) const
virtual

Gets the file name of the log file.

Returns
The file name of the log file.

◆ getLevel()

LogLevel RollingFileSink::getLevel ( ) const
overridevirtual

Gets the minimum log level for messages to get written to the log.

Implements LiteFX::Logging::ISink.

◆ getMaxFiles()

int RollingFileSink::getMaxFiles ( ) const
virtual

Returns the maximum number of log files to keep.

Returns
The maximum number of log files to keep.

◆ getName()

String RollingFileSink::getName ( ) const
overridevirtual

Gets the name of the sink.

Implements LiteFX::Logging::ISink.

◆ getPattern()

String RollingFileSink::getPattern ( ) const
overridevirtual

Gets the pattern used to format the messages for the sink.

Implements LiteFX::Logging::ISink.

◆ getTruncate()

bool RollingFileSink::getTruncate ( ) const
virtual

Returns true, if the log messages should be truncated to the contents of the file, or false if existing messages are overwritten.

Returns
true, if the log messages should be truncated to the contents of the file, or false if existing messages are overwritten.

◆ operator=() [1/2]

auto LiteFX::Logging::RollingFileSink::operator= ( const RollingFileSink & )
delete

◆ operator=() [2/2]

auto LiteFX::Logging::RollingFileSink::operator= ( RollingFileSink && )
deletenoexcept