quill
Public Member Functions | Protected Attributes | List of all members
ConsoleSink Class Reference
Inheritance diagram for ConsoleSink:
Inheritance graph
[legend]
Collaboration diagram for ConsoleSink:
Collaboration graph
[legend]

Public Member Functions

 ConsoleSink (ConsoleSinkConfig const &config=ConsoleSinkConfig{})
 Constructor with custom ConsoleColours config.
 
QUILL_ATTRIBUTE_HOT void write_log (MacroMetadata const *log_metadata, uint64_t log_timestamp, std::string_view thread_id, std::string_view thread_name, std::string const &process_id, std::string_view logger_name, LogLevel log_level, std::string_view log_level_description, std::string_view log_level_short_code, std::vector< std::pair< std::string, std::string >> const *named_args, std::string_view log_message, std::string_view log_statement) override
 Write a formatted log message to the stream. More...
 
- Public Member Functions inherited from StreamSink
 StreamSink (fs::path stream, FILE *file=nullptr, std::optional< PatternFormatterOptions > const &override_pattern_formatter_options=std::nullopt, FileEventNotifier file_event_notifier=FileEventNotifier{})
 Constructor for StreamSink. More...
 
QUILL_ATTRIBUTE_HOT void write_log (MacroMetadata const *, uint64_t, std::string_view, std::string_view, std::string const &, std::string_view, LogLevel, std::string_view, std::string_view, std::vector< std::pair< std::string, std::string >> const *, std::string_view, std::string_view log_statement) override
 Writes a formatted log message to the stream.
 
QUILL_ATTRIBUTE_HOT void flush_sink () override
 Flushes the stream.
 
virtual QUILL_NODISCARD fs::path const & get_filename () const noexcept
 Returns the name of the file. More...
 
QUILL_NODISCARD bool is_null () const noexcept
 Checks if the stream is null. More...
 
- Public Member Functions inherited from Sink
 Sink (std::optional< PatternFormatterOptions > override_pattern_formatter_options=std::nullopt)
 Constructor Uses the default pattern formatter.
 
virtual ~Sink ()=default
 Destructor.
 
 Sink (Sink const &)=delete
 
Sinkoperator= (Sink const &)=delete
 
void set_log_level_filter (LogLevel log_level)
 Sets a log level filter on the sink. More...
 
QUILL_NODISCARD LogLevel get_log_level_filter () const noexcept
 Returns the current log level filter set on the sink. More...
 
void add_filter (std::unique_ptr< Filter > filter)
 Adds a new filter to the sink. More...
 

Protected Attributes

ConsoleSinkConfig _config
 
- Protected Attributes inherited from StreamSink
fs::path _filename
 
FILE * _file {nullptr}
 
size_t _file_size {0}
 The current file size.
 
FileEventNotifier _file_event_notifier
 
bool _is_null {false}
 
bool _write_occurred {false}
 

Additional Inherited Members

- Static Public Member Functions inherited from StreamSink
static QUILL_ATTRIBUTE_HOT void safe_fwrite (void const *ptr, size_t size, size_t count, FILE *stream)
 Writes data safely to the stream. More...
 
- Protected Member Functions inherited from StreamSink
QUILL_ATTRIBUTE_HOT void flush ()
 Flushes the stream.
 
- Protected Member Functions inherited from Sink
virtual QUILL_ATTRIBUTE_HOT void run_periodic_tasks () noexcept
 Executes periodic tasks by the backend thread, providing an opportunity for the user to perform custom tasks. More...
 
QUILL_NODISCARD bool apply_all_filters (MacroMetadata const *log_metadata, uint64_t log_timestamp, std::string_view thread_id, std::string_view thread_name, std::string_view logger_name, LogLevel log_level, std::string_view log_message, std::string_view log_statement)
 Applies all registered filters to the log record. More...
 

Member Function Documentation

◆ write_log()

QUILL_ATTRIBUTE_HOT void ConsoleSink::write_log ( MacroMetadata const *  log_metadata,
uint64_t  log_timestamp,
std::string_view  thread_id,
std::string_view  thread_name,
std::string const &  process_id,
std::string_view  logger_name,
LogLevel  log_level,
std::string_view  log_level_description,
std::string_view  log_level_short_code,
std::vector< std::pair< std::string, std::string >> const *  named_args,
std::string_view  log_message,
std::string_view  log_statement 
)
inlineoverridevirtual

Write a formatted log message to the stream.

Parameters
log_metadatalog metadata
log_timestamplog timestamp
thread_idthread id
thread_namethread name
process_idProcess Id
logger_namelogger name
log_levelLog level of the message.
log_level_descriptionDescription of the log level.
log_level_short_codeShort code representing the log level.
named_argsvector of key-value pairs of named args
log_messagelog message
log_statementlog statement

Implements Sink.


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