diff options
Diffstat (limited to 'server/src/log.cpp')
| -rw-r--r-- | server/src/log.cpp | 30 |
1 files changed, 12 insertions, 18 deletions
diff --git a/server/src/log.cpp b/server/src/log.cpp index bb9fde2..5953c14 100644 --- a/server/src/log.cpp +++ b/server/src/log.cpp | |||
| @@ -30,17 +30,7 @@ auto sink::level() const -> enum level { return lvl_; } | |||
| 30 | 30 | ||
| 31 | auto sink::set_level(enum level lvl) -> void { lvl_ = lvl; } | 31 | auto sink::set_level(enum level lvl) -> void { lvl_ = lvl; } |
| 32 | 32 | ||
| 33 | auto sink::write(tmp_message msg) -> void | 33 | auto sink::write() -> std::osyncstream { return std::osyncstream{os_}; } |
| 34 | { | ||
| 35 | auto sos = std::osyncstream{os_}; | ||
| 36 | sos << "[" << msg.lvl; | ||
| 37 | if (!msg.component.empty()) | ||
| 38 | sos << " " << msg.component; | ||
| 39 | sos << "] " << msg.txt; | ||
| 40 | for (auto const& [k, v] : msg.attrs) | ||
| 41 | sos << " " << k << "=" << std::quoted(v); | ||
| 42 | sos << std::endl; // we want the flush! | ||
| 43 | } | ||
| 44 | 34 | ||
| 45 | auto make_sink(level lvl) -> std::shared_ptr<sink> | 35 | auto make_sink(level lvl) -> std::shared_ptr<sink> |
| 46 | { | 36 | { |
| @@ -51,13 +41,17 @@ auto logger::log_at(log::level lvl, std::string_view fmt, std::format_args args) | |||
| 51 | -> logger& | 41 | -> logger& |
| 52 | { | 42 | { |
| 53 | if (sink_->level() <= lvl) | 43 | if (sink_->level() <= lvl) |
| 54 | sink_->write( | 44 | { |
| 55 | sink::tmp_message{ | 45 | auto sos = sink_->write(); |
| 56 | .lvl = lvl, | 46 | sos << "[" << lvl; |
| 57 | .component = component_, | 47 | if (!component_.empty()) |
| 58 | .txt = std::vformat(fmt, args), | 48 | sos << " " << component_; |
| 59 | .attrs = attrs_, | 49 | sos << "] "; |
| 60 | }); | 50 | std::vprint_unicode(sos, fmt, args); |
| 51 | for (auto const& [k, v] : attrs_) | ||
| 52 | sos << " " << k << "=" << std::quoted(v); | ||
| 53 | sos << std::endl; // we want the flush! | ||
| 54 | } | ||
| 61 | return *this; | 55 | return *this; |
| 62 | } | 56 | } |
| 63 | 57 | ||