| 123456789101112131415161718192021222324252627282930313233 |
- #pragma once
- #include "logger/logger_fwd.h"
- #include <memory>
- #include <vector>
- #include <utility>
- namespace logging {
- class log_appender {
- public:
- log_appender(p_appender append, p_layout layout);
- ~log_appender();
-
- void write(logpacket const & packet);
- bool should_log(level ll) const;
- void flush();
-
- private:
- p_appender appender_;
- p_layout layout_;
- bool has_logged_;
- };
- struct logger_impl {
- bool should_log(level ll) const;
- void write(logpacket const & pkt);
- void flush();
- std::vector<std::shared_ptr<log_appender>> impls;
- level min_log_level;
- };
- }
|