From 3ff3f9f00328b4f9538f1a2d008034c1368758f1 Mon Sep 17 00:00:00 2001 From: zxu Date: Wed, 20 Dec 2017 13:32:57 -0500 Subject: implement C++ logger (#575) * implement logger, apple impl and other impl, with test. * some minor fixes * re-organize cmake build rules; * fix bugs in log_apple.mm; * style fix by style.sh * Complete removal of LogAssert --- Firestore/core/src/firebase/firestore/util/log.h | 63 ++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 Firestore/core/src/firebase/firestore/util/log.h (limited to 'Firestore/core/src/firebase/firestore/util/log.h') diff --git a/Firestore/core/src/firebase/firestore/util/log.h b/Firestore/core/src/firebase/firestore/util/log.h new file mode 100644 index 0000000..d0cff4d --- /dev/null +++ b/Firestore/core/src/firebase/firestore/util/log.h @@ -0,0 +1,63 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FIRESTORE_CORE_SRC_FIREBASE_FIRESTORE_UTIL_LOG_H_ +#define FIRESTORE_CORE_SRC_FIREBASE_FIRESTORE_UTIL_LOG_H_ + +#include + +namespace firebase { +namespace firestore { +namespace util { + +/// @brief Levels used when logging messages. +enum LogLevel { + /// Verbose Log Level + kLogLevelVerbose = 0, + /// Debug Log Level + kLogLevelDebug, + /// Info Log Level + kLogLevelInfo, + /// Warning Log Level + kLogLevelWarning, + /// Error Log Level + kLogLevelError, +}; + +// Common log methods. + +// All messages at or above the specified log level value are displayed. +void LogSetLevel(LogLevel level); +// Get the currently set log level. +LogLevel LogGetLevel(); +// Log a debug message to the system log. +void LogDebug(const char* format, ...); +// Log an info message to the system log. +void LogInfo(const char* format, ...); +// Log a warning to the system log. +void LogWarning(const char* format, ...); +// Log an error to the system log. +void LogError(const char* format, ...); +// Log a firebase message (implemented by the platform specific logger). +void LogMessageV(LogLevel log_level, const char* format, va_list args); +// Log a firebase message via LogMessageV(). +void LogMessage(LogLevel log_level, const char* format, ...); + +} // namespace util +} // namespace firestore +} // namespace firebase + +#endif // FIRESTORE_CORE_SRC_FIREBASE_FIRESTORE_UTIL_LOG_H_ -- cgit v1.2.3