aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firestore/core/src/firebase/firestore/util/log_stdio.cc
diff options
context:
space:
mode:
authorGravatar Gil <mcg@google.com>2018-05-23 07:00:05 -0700
committerGravatar GitHub <noreply@github.com>2018-05-23 07:00:05 -0700
commitaf19a1b07245b7d0be4fd492bd3731964937c7c6 (patch)
treee19db1c38a0de792ef8f49b259f34d0dab252fb1 /Firestore/core/src/firebase/firestore/util/log_stdio.cc
parent23f8320148672310ff71aa3ef2b6c3ac86d47ede (diff)
Reimplement C++ logging (#1313)
* Add direct support for formatting Objective-C objects * Rewrite log.h * Convert FSTWarn to LOG_WARN * Convert FSTLog to LOG_DEBUG * Remove FSTLogger
Diffstat (limited to 'Firestore/core/src/firebase/firestore/util/log_stdio.cc')
-rw-r--r--Firestore/core/src/firebase/firestore/util/log_stdio.cc63
1 files changed, 14 insertions, 49 deletions
diff --git a/Firestore/core/src/firebase/firestore/util/log_stdio.cc b/Firestore/core/src/firebase/firestore/util/log_stdio.cc
index b277406..6fff885 100644
--- a/Firestore/core/src/firebase/firestore/util/log_stdio.cc
+++ b/Firestore/core/src/firebase/firestore/util/log_stdio.cc
@@ -19,77 +19,42 @@
#include <cstdio>
#include <string>
+#include "Firestore/core/src/firebase/firestore/util/hard_assert.h"
+
namespace firebase {
namespace firestore {
namespace util {
-LogLevel g_log_level = kLogLevelInfo;
+LogLevel g_log_level = kLogLevelWarning;
void LogSetLevel(LogLevel level) {
g_log_level = level;
}
-LogLevel LogGetLevel() {
- return g_log_level;
-}
-
-void LogDebug(const char* format, ...) {
- va_list list;
- va_start(list, format);
- LogMessageV(kLogLevelDebug, format, list);
- va_end(list);
-}
-
-void LogInfo(const char* format, ...) {
- va_list list;
- va_start(list, format);
- LogMessageV(kLogLevelInfo, format, list);
- va_end(list);
-}
-
-void LogWarning(const char* format, ...) {
- va_list list;
- va_start(list, format);
- LogMessageV(kLogLevelWarning, format, list);
- va_end(list);
+bool LogIsLoggable(LogLevel level) {
+ return level >= g_log_level;
}
-void LogError(const char* format, ...) {
- va_list list;
- va_start(list, format);
- LogMessageV(kLogLevelError, format, list);
- va_end(list);
-}
-
-void LogMessageV(LogLevel log_level, const char* format, va_list args) {
+void LogMessage(LogLevel log_level, const std::string& message) {
if (log_level < g_log_level) {
return;
}
+
+ const char* level_word;
+
switch (log_level) {
- case kLogLevelVerbose:
- printf("VERBOSE: ");
- break;
case kLogLevelDebug:
- printf("DEBUG: ");
- break;
- case kLogLevelInfo:
+ level_word = "DEBUG";
break;
case kLogLevelWarning:
- printf("WARNING: ");
+ level_word = "WARNING";
break;
- case kLogLevelError:
- printf("ERROR: ");
+ default:
+ UNREACHABLE();
break;
}
- vprintf(format, args);
- printf("\n");
-}
-void LogMessage(LogLevel log_level, const char* format, ...) {
- va_list list;
- va_start(list, format);
- LogMessageV(log_level, format, list);
- va_end(list);
+ printf("%s: %s\n", level_word, message.c_str());
}
} // namespace util