1 /* 2 * coreMQTT Agent v1.1.0 3 * Copyright (C) 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved. 4 * 5 * Permission is hereby granted, free of charge, to any person obtaining a copy of 6 * this software and associated documentation files (the "Software"), to deal in 7 * the Software without restriction, including without limitation the rights to 8 * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 * the Software, and to permit persons to whom the Software is furnished to do so, 10 * subject to the following conditions: 11 * 12 * The above copyright notice and this permission notice shall be included in all 13 * copies or substantial portions of the Software. 14 * 15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 */ 22 23 /** 24 * @file logging_levels.h 25 * @brief Defines the logging level macros. 26 */ 27 28 #ifndef LOGGING_LEVELS_H_ 29 #define LOGGING_LEVELS_H_ 30 31 /** 32 * @brief No log messages. 33 * 34 * When @ref LIBRARY_LOG_LEVEL is #LOG_NONE, logging is disabled and no 35 * logging messages are printed. 36 */ 37 #define LOG_NONE 0 38 39 /** 40 * @brief Represents erroneous application state or event. 41 * 42 * These messages describe the situations when a library encounters an error from 43 * which it cannot recover. 44 * 45 * These messages are printed when @ref LIBRARY_LOG_LEVEL is defined as either 46 * of #LOG_ERROR, #LOG_WARN, #LOG_INFO or #LOG_DEBUG. 47 */ 48 #define LOG_ERROR 1 49 50 /** 51 * @brief Message about an abnormal event. 52 * 53 * These messages describe the situations when a library encounters 54 * abnormal event that may be indicative of an error. Libraries continue 55 * execution after logging a warning. 56 * 57 * These messages are printed when @ref LIBRARY_LOG_LEVEL is defined as either 58 * of #LOG_WARN, #LOG_INFO or #LOG_DEBUG. 59 */ 60 #define LOG_WARN 2 61 62 /** 63 * @brief A helpful, informational message. 64 * 65 * These messages describe normal execution of a library. They provide 66 * the progress of the program at a coarse-grained level. 67 * 68 * These messages are printed when @ref LIBRARY_LOG_LEVEL is defined as either 69 * of #LOG_INFO or #LOG_DEBUG. 70 */ 71 #define LOG_INFO 3 72 73 /** 74 * @brief Detailed and excessive debug information. 75 * 76 * Debug log messages are used to provide the 77 * progress of the program at a fine-grained level. These are mostly used 78 * for debugging and may contain excessive information such as internal 79 * variables, buffers, or other specific information. 80 * 81 * These messages are only printed when @ref LIBRARY_LOG_LEVEL is defined as 82 * #LOG_DEBUG. 83 */ 84 #define LOG_DEBUG 4 85 86 /* The macro definition for LIBRARY_LOG_LEVEL is for Doxygen 87 * documentation only. This macro is typically defined in only the 88 * <library>_config.h file or the demo_config.h file. */ 89 90 /** 91 * @brief The logging level verbosity configuration of log messages from library. 92 * 93 * The logging verbosity levels are one of #LOG_DEBUG, #LOG_INFO, #LOG_WARN, 94 * and #LOG_ERROR. 95 * - With level #LOG_NONE, logging will be disabled. 96 * - With level #LOG_DEBUG, all log messages will print. 97 * - With level #LOG_INFO, all log messages, except level #LOG_DEBUG, will print. 98 * - With level #LOG_WARN, only messages this level and #LOG_ERROR level will print. 99 * - With level #LOG_ERROR, only messages at this level will print. 100 */ 101 #ifdef DOXYGEN 102 #define LIBRARY_LOG_LEVEL LOG_ERROR 103 #endif 104 105 #endif /* ifndef LOGGING_LEVELS_H_ */ 106