aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/common/logging/backend.cpp
diff options
context:
space:
mode:
authorGravatar bunnei <bunneidev@gmail.com>2015-03-09 15:42:18 -0400
committerGravatar bunnei <bunneidev@gmail.com>2015-03-09 15:42:18 -0400
commit3da94a597b5642c1b586700d72255589cf5a0cdf (patch)
tree9f73ded034bceaab1f7e41cf19fe987d19b2e083 /src/common/logging/backend.cpp
parentf2a7c2b3b74df6b1977392a5ad7e91bae4a8a5b6 (diff)
parent0aa44e238db7a72f4fb8b347168ec76c3ce48ad5 (diff)
Merge pull request #634 from linkmauve/logging-performances
Apply the logging filter before sending the message to the queue
Diffstat (limited to 'src/common/logging/backend.cpp')
-rw-r--r--src/common/logging/backend.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/common/logging/backend.cpp b/src/common/logging/backend.cpp
index 7c1010b2..7b479b56 100644
--- a/src/common/logging/backend.cpp
+++ b/src/common/logging/backend.cpp
@@ -135,9 +135,18 @@ Entry CreateEntry(Class log_class, Level log_level,
return std::move(entry);
}
+static Filter* filter;
+
+void SetFilter(Filter* new_filter) {
+ filter = new_filter;
+}
+
void LogMessage(Class log_class, Level log_level,
const char* filename, unsigned int line_nr, const char* function,
const char* format, ...) {
+ if (!filter->CheckMessage(log_class, log_level))
+ return;
+
va_list args;
va_start(args, format);
Entry entry = CreateEntry(log_class, log_level,