LogIt++
Header-only, macro-first C++ logging library
Loading...
Searching...
No Matches
logit::MdbxLogger::Config Struct Reference

Configuration for the MDBX logger backend. More...

#include <MdbxLogger.hpp>

Public Attributes

std::string path = "logs.mdbx"
 MDBX environment path.
 
std::string app_name
 Optional application name stored in session metadata.
 
uint64_t session_id = 0
 Existing session id, or 0 to auto-create.
 
bool async = true
 Queue records and write them from a worker thread.
 
bool drop_on_overflow = true
 Drop newest record when the async queue is full.
 
std::size_t max_queue_size = 8192
 Maximum async queue size; 0 means unlimited.
 
std::size_t max_batch_size = 256
 Maximum records per write transaction.
 
int flush_interval_ms = 100
 Worker wake interval.
 
std::size_t large_payload_threshold = 4096
 Spill messages larger than this.
 
std::size_t payload_preview_size = 512
 Bytes kept inline when a message spills.
 
bool store_large_payloads_separately = true
 Store large messages in log_payloads.
 
MdbxPayloadCompression payload_compression = MdbxPayloadCompression::None
 Payload compression.
 
int payload_compression_level = 6
 Compression level for gzip/zstd.
 
std::function< void(const std::string &)> on_error
 Optional callback invoked on initialization and write errors instead of stderr.
 

Detailed Description

Configuration for the MDBX logger backend.

Definition at line 50 of file MdbxLogger.hpp.

Member Data Documentation

◆ app_name

std::string logit::MdbxLogger::Config::app_name

Optional application name stored in session metadata.

Definition at line 52 of file MdbxLogger.hpp.

◆ async

bool logit::MdbxLogger::Config::async = true

Queue records and write them from a worker thread.

Definition at line 54 of file MdbxLogger.hpp.

◆ drop_on_overflow

bool logit::MdbxLogger::Config::drop_on_overflow = true

Drop newest record when the async queue is full.

Definition at line 55 of file MdbxLogger.hpp.

◆ flush_interval_ms

int logit::MdbxLogger::Config::flush_interval_ms = 100

Worker wake interval.

Definition at line 58 of file MdbxLogger.hpp.

◆ large_payload_threshold

std::size_t logit::MdbxLogger::Config::large_payload_threshold = 4096

Spill messages larger than this.

Definition at line 59 of file MdbxLogger.hpp.

◆ max_batch_size

std::size_t logit::MdbxLogger::Config::max_batch_size = 256

Maximum records per write transaction.

Definition at line 57 of file MdbxLogger.hpp.

◆ max_queue_size

std::size_t logit::MdbxLogger::Config::max_queue_size = 8192

Maximum async queue size; 0 means unlimited.

Definition at line 56 of file MdbxLogger.hpp.

◆ on_error

std::function<void(const std::string&)> logit::MdbxLogger::Config::on_error

Optional callback invoked on initialization and write errors instead of stderr.

Definition at line 64 of file MdbxLogger.hpp.

◆ path

std::string logit::MdbxLogger::Config::path = "logs.mdbx"

MDBX environment path.

Definition at line 51 of file MdbxLogger.hpp.

◆ payload_compression

MdbxPayloadCompression logit::MdbxLogger::Config::payload_compression = MdbxPayloadCompression::None

Payload compression.

Definition at line 62 of file MdbxLogger.hpp.

◆ payload_compression_level

int logit::MdbxLogger::Config::payload_compression_level = 6

Compression level for gzip/zstd.

Definition at line 63 of file MdbxLogger.hpp.

◆ payload_preview_size

std::size_t logit::MdbxLogger::Config::payload_preview_size = 512

Bytes kept inline when a message spills.

Definition at line 60 of file MdbxLogger.hpp.

◆ session_id

uint64_t logit::MdbxLogger::Config::session_id = 0

Existing session id, or 0 to auto-create.

Definition at line 53 of file MdbxLogger.hpp.

◆ store_large_payloads_separately

bool logit::MdbxLogger::Config::store_large_payloads_separately = true

Store large messages in log_payloads.

Definition at line 61 of file MdbxLogger.hpp.


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