diff options
author | zxu <zxu@google.com> | 2017-12-20 13:32:57 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-20 13:32:57 -0500 |
commit | 3ff3f9f00328b4f9538f1a2d008034c1368758f1 (patch) | |
tree | 0dc9d321c8c49186cba0a4dd435377a3a066068c /Firestore/core/src/firebase/firestore/util/log.h | |
parent | 60fa69332e485223e0da902dc1abb0f30dfd2b81 (diff) |
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
Diffstat (limited to 'Firestore/core/src/firebase/firestore/util/log.h')
-rw-r--r-- | Firestore/core/src/firebase/firestore/util/log.h | 63 |
1 files changed, 63 insertions, 0 deletions
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 <stdarg.h> + +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_ |