29#include <unordered_map>
41constexpr std::string_view kLoggerTypeCerr =
"cerr";
42constexpr std::string_view kLoggerTypeSpdlog =
"spdlog";
46 const std::unordered_map<std::string, std::string>& properties)>;
58 const std::unordered_map<std::string, std::string>& properties);
Registry of logger factories, mirroring MetricsReporters.
Definition loggers.h:54
static Status Register(std::string_view logger_type, LoggerFactory factory)
Register a factory for logger_type (overwrites any existing).
static Result< std::unique_ptr< Logger > > Load(const std::unordered_map< std::string, std::string > &properties)
Construct and initialize a logger from properties.
Define symbol visibility macros for core Iceberg APIs.
Pluggable logging interface and the process-global default logger.
Core Apache Iceberg C++ APIs.
Definition arrow_io_util.h:33
std::function< Result< std::unique_ptr< Logger > >(const std::unordered_map< std::string, std::string > &properties)> LoggerFactory
Factory constructing a Logger from catalog-style properties.
Definition loggers.h:46
constexpr std::string_view kLoggerTypeNoop
Built-in logger type identifiers.
Definition loggers.h:40
constexpr std::string_view kLoggerImpl
Property key selecting the logger implementation.
Definition loggers.h:38
std::expected< T, E > Result
Result alias.
Definition result.h:88
Define Result, Status, and error helpers.