log_msg to contain logger_name + astyle
This commit is contained in:
parent
d2178160b0
commit
f9f59a545c
@ -21,7 +21,9 @@ public:
|
|||||||
stack_devicebuf(const stack_devicebuf& other) :std::basic_streambuf<char>(), _stackbuf(other._stackbuf)
|
stack_devicebuf(const stack_devicebuf& other) :std::basic_streambuf<char>(), _stackbuf(other._stackbuf)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
stack_devicebuf(stack_devicebuf&& other) :std::basic_streambuf<char>(), _stackbuf(std::move(other._stackbuf))
|
stack_devicebuf(stack_devicebuf&& other):
|
||||||
|
std::basic_streambuf<char>(),
|
||||||
|
_stackbuf(std::move(other._stackbuf))
|
||||||
{
|
{
|
||||||
other.clear();
|
other.clear();
|
||||||
}
|
}
|
||||||
@ -102,4 +104,4 @@ private:
|
|||||||
stack_devicebuf _dev;
|
stack_devicebuf _dev;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -12,8 +12,8 @@ public:
|
|||||||
explicit file_flush_helper(const std::size_t flush_every):
|
explicit file_flush_helper(const std::size_t flush_every):
|
||||||
_flush_every(flush_every),
|
_flush_every(flush_every),
|
||||||
_flush_countdown(flush_every) {};
|
_flush_countdown(flush_every) {};
|
||||||
|
|
||||||
void write(const std::string& msg, std::ofstream& ofs)
|
void write(const std::string& msg, std::ofstream& ofs)
|
||||||
{
|
{
|
||||||
ofs.write(msg.data(), msg.size());
|
ofs.write(msg.data(), msg.size());
|
||||||
if(--_flush_countdown == 0)
|
if(--_flush_countdown == 0)
|
||||||
|
@ -46,7 +46,8 @@ public:
|
|||||||
{
|
{
|
||||||
if (_enabled)
|
if (_enabled)
|
||||||
{
|
{
|
||||||
_log_msg.time = log_clock::now();
|
_log_msg.logger_name = _callback_logger->get_name();
|
||||||
|
_log_msg.time = log_clock::now();
|
||||||
_log_msg.raw = _oss.str();
|
_log_msg.raw = _oss.str();
|
||||||
_callback_logger->_log_it(_log_msg);
|
_callback_logger->_log_it(_log_msg);
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@ struct log_msg
|
|||||||
{
|
{
|
||||||
log_msg() = default;
|
log_msg() = default;
|
||||||
log_msg(level::level_enum l):
|
log_msg(level::level_enum l):
|
||||||
|
logger_name(),
|
||||||
level(l),
|
level(l),
|
||||||
time(),
|
time(),
|
||||||
raw(),
|
raw(),
|
||||||
@ -15,6 +16,7 @@ struct log_msg
|
|||||||
|
|
||||||
|
|
||||||
log_msg(const log_msg& other):
|
log_msg(const log_msg& other):
|
||||||
|
logger_name(other.logger_name),
|
||||||
level(other.level),
|
level(other.level),
|
||||||
time(other.time),
|
time(other.time),
|
||||||
raw(other.raw),
|
raw(other.raw),
|
||||||
@ -28,6 +30,7 @@ struct log_msg
|
|||||||
friend void swap(log_msg& l, log_msg& r)
|
friend void swap(log_msg& l, log_msg& r)
|
||||||
{
|
{
|
||||||
using std::swap;
|
using std::swap;
|
||||||
|
swap(l.logger_name, r.logger_name);
|
||||||
swap(l.level, r.level);
|
swap(l.level, r.level);
|
||||||
swap(l.time, r.time);
|
swap(l.time, r.time);
|
||||||
swap(l.raw, r.raw);
|
swap(l.raw, r.raw);
|
||||||
@ -48,6 +51,7 @@ struct log_msg
|
|||||||
formatted.clear();
|
formatted.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string logger_name;
|
||||||
level::level_enum level;
|
level::level_enum level;
|
||||||
log_clock::time_point time;
|
log_clock::time_point time;
|
||||||
std::string raw;
|
std::string raw;
|
||||||
|
@ -5,9 +5,7 @@
|
|||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
||||||
// Fast memory storage
|
// Fast memory storage on the stack when possible or in std::vector
|
||||||
// stores its contents on the stack when possible, in vector<char> otherwise
|
|
||||||
// NOTE: User should be remember that returned buffer might be on the stack!!
|
|
||||||
namespace c11log
|
namespace c11log
|
||||||
{
|
{
|
||||||
namespace details
|
namespace details
|
||||||
@ -24,11 +22,6 @@ public:
|
|||||||
|
|
||||||
stack_buf& operator=(const stack_buf& other) = delete;
|
stack_buf& operator=(const stack_buf& other) = delete;
|
||||||
|
|
||||||
stack_buf(const bufpair_t& buf_to_copy) :stack_buf()
|
|
||||||
{
|
|
||||||
append(buf_to_copy);
|
|
||||||
}
|
|
||||||
|
|
||||||
stack_buf(const stack_buf& other)
|
stack_buf(const stack_buf& other)
|
||||||
{
|
{
|
||||||
_stack_size = other._stack_size;
|
_stack_size = other._stack_size;
|
||||||
@ -108,4 +101,4 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
} //namespace c11log { namespace details {
|
} //namespace c11log { namespace details {
|
||||||
|
@ -22,7 +22,7 @@ namespace formatters
|
|||||||
class formatter
|
class formatter
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual void format(const std::string& logger_name, details::log_msg& msg) = 0;
|
virtual void format(details::log_msg& msg) = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -30,12 +30,12 @@ class default_formatter: public formatter
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
// Format: [2013-12-29 01:04:42.900] [logger_name:Info] Message body
|
// Format: [2013-12-29 01:04:42.900] [logger_name:Info] Message body
|
||||||
void format(const std::string& logger_name, details::log_msg& msg) override
|
void format(details::log_msg& msg) override
|
||||||
{
|
{
|
||||||
details::fast_oss oss;
|
details::fast_oss oss;
|
||||||
_format_time(msg.time, oss);
|
_format_time(msg.time, oss);
|
||||||
if(!logger_name.empty())
|
if(!msg.logger_name.empty())
|
||||||
oss << " [" << logger_name << ':' << c11log::level::to_str(msg.level) << "] ";
|
oss << " [" << msg.logger_name << ':' << c11log::level::to_str(msg.level) << "] ";
|
||||||
else
|
else
|
||||||
oss << " [" << c11log::level::to_str(msg.level) << "] ";
|
oss << " [" << c11log::level::to_str(msg.level) << "] ";
|
||||||
oss << msg.raw << details::os::eol();
|
oss << msg.raw << details::os::eol();
|
||||||
|
@ -209,7 +209,7 @@ inline bool c11log::logger::should_log(c11log::level::level_enum level) const
|
|||||||
|
|
||||||
inline void c11log::logger::_log_it(details::log_msg& msg)
|
inline void c11log::logger::_log_it(details::log_msg& msg)
|
||||||
{
|
{
|
||||||
_formatter->format(_logger_name, msg);
|
_formatter->format(msg);
|
||||||
for (auto &sink : _sinks)
|
for (auto &sink : _sinks)
|
||||||
sink->log(msg);
|
sink->log(msg);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user