mirror of
https://github.com/gabime/spdlog.git
synced 2024-12-24 09:31:34 +08:00
line_logger fixes
This commit is contained in:
parent
4c367a4bb5
commit
98476e229a
@ -48,7 +48,8 @@ public:
|
||||
_enabled(other._enabled) {}
|
||||
|
||||
~line_logger()
|
||||
{
|
||||
{
|
||||
//only if enabled and not empty
|
||||
if (!_empty)
|
||||
{
|
||||
_oss << os::eol();
|
||||
|
@ -65,7 +65,7 @@ private:
|
||||
std::string _logger_name;
|
||||
formatter_ptr _formatter;
|
||||
sinks_vector_t _sinks;
|
||||
std::atomic_int _logger_level;
|
||||
std::atomic_int _level_threshold;
|
||||
|
||||
void _log_it(const details::log_msg& msg);
|
||||
|
||||
@ -87,7 +87,7 @@ inline c11log::logger::logger(const std::string& name, sinks_init_list sinks_lis
|
||||
_sinks(sinks_list)
|
||||
{
|
||||
//Seems that vs2013 doesnt support std::atomic member initialization, so its done here
|
||||
_logger_level = level::INFO;
|
||||
_level_threshold = level::INFO;
|
||||
if(!_formatter)
|
||||
_formatter = std::make_shared<formatters::default_formatter>();
|
||||
}
|
||||
@ -99,7 +99,7 @@ inline c11log::logger::logger(const std::string& name, sink_ptr sink, formatter_
|
||||
|
||||
inline c11log::details::line_logger c11log::logger::log(c11log::level::level_enum msg_level)
|
||||
{
|
||||
return details::line_logger(this, msg_level, msg_level >= _logger_level);
|
||||
return details::line_logger(this, msg_level, msg_level >= _level_threshold);
|
||||
}
|
||||
|
||||
inline c11log::details::line_logger c11log::logger::debug()
|
||||
@ -137,17 +137,17 @@ inline const std::string& c11log::logger::get_name() const
|
||||
|
||||
inline void c11log::logger::set_level(c11log::level::level_enum level)
|
||||
{
|
||||
_logger_level.store(level);
|
||||
_level_threshold.store(level);
|
||||
}
|
||||
|
||||
inline c11log::level::level_enum c11log::logger::get_level() const
|
||||
{
|
||||
return static_cast<c11log::level::level_enum>(_logger_level.load());
|
||||
return static_cast<c11log::level::level_enum>(_level_threshold.load());
|
||||
}
|
||||
|
||||
inline bool c11log::logger::should_log(c11log::level::level_enum level) const
|
||||
{
|
||||
return level >= _logger_level.load();
|
||||
return level >= _level_threshold.load();
|
||||
}
|
||||
|
||||
inline void c11log::logger::_log_it(const details::log_msg& msg)
|
||||
|
Loading…
Reference in New Issue
Block a user