line_logger fixes
This commit is contained in:
		
							parent
							
								
									4c367a4bb5
								
							
						
					
					
						commit
						98476e229a
					
				| @ -49,6 +49,7 @@ public: | ||||
| 
 | ||||
|     ~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…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user