File tree Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Original file line number Diff line number Diff line change 1717#include < list>
1818#include < mutex>
1919#include < string>
20+ #include < unordered_map>
2021#include < vector>
2122
2223static const bool DEFAULT_LOGTIMEMICROS = false ;
@@ -92,6 +93,9 @@ namespace BCLog {
9293 */
9394 std::atomic_bool m_started_new_line{true };
9495
96+ // ! Category-specific log level. Overrides `m_log_level`.
97+ std::unordered_map<LogFlags, Level> m_category_log_levels GUARDED_BY (m_cs);
98+
9599 // ! If there is no category-specific log level, all logs with a severity
96100 // ! level lower than `m_log_level` will be ignored.
97101 std::atomic<Level> m_log_level{DEFAULT_LOG_LEVEL};
@@ -148,6 +152,17 @@ namespace BCLog {
148152
149153 void ShrinkDebugFile ();
150154
155+ std::unordered_map<LogFlags, Level> CategoryLevels () const
156+ {
157+ StdLockGuard scoped_lock (m_cs);
158+ return m_category_log_levels;
159+ }
160+ void SetCategoryLogLevel (const std::unordered_map<LogFlags, Level>& levels)
161+ {
162+ StdLockGuard scoped_lock (m_cs);
163+ m_category_log_levels = levels;
164+ }
165+
151166 Level LogLevel () const { return m_log_level.load (); }
152167 void SetLogLevel (Level level) { m_log_level = level; }
153168
You can’t perform that action at this time.
0 commit comments