/* See Project CHIP LICENSE file for licensing information. */ #pragma once namespace chip { namespace Logging { /** * @enum LogModule * * @brief * Identifies a logical section of code that is a source of log * messages. * * @note If you add modules or rearrange this list you must update the * ModuleNames tables in ChipLogging.cpp. * */ enum LogModule { kLogModule_NotSpecified = 0, kLogModule_Inet, kLogModule_Ble, kLogModule_MessageLayer, kLogModule_SecurityManager, kLogModule_ExchangeManager, kLogModule_TLV, kLogModule_ASN1, kLogModule_Crypto, kLogModule_Controller, kLogModule_Alarm, kLogModule_SecureChannel, kLogModule_BDX, kLogModule_DataManagement, kLogModule_DeviceControl, kLogModule_DeviceDescription, kLogModule_Echo, kLogModule_FabricProvisioning, kLogModule_NetworkProvisioning, kLogModule_ServiceDirectory, kLogModule_ServiceProvisioning, kLogModule_SoftwareUpdate, kLogModule_FailSafe, kLogModule_TimeService, kLogModule_Heartbeat, kLogModule_chipSystemLayer, kLogModule_EventLogging, kLogModule_Support, kLogModule_chipTool, kLogModule_Zcl, kLogModule_Shell, kLogModule_DeviceLayer, kLogModule_SetupPayload, kLogModule_AppServer, kLogModule_Discovery, kLogModule_InteractionModel, kLogModule_Test, kLogModule_OperationalSessionSetup, kLogModule_Automation, kLogModule_CASESessionManager, kLogModule_ICD, kLogModule_FabricSync, kLogModule_Max }; /* Log modules enablers. Those definitions can be overwritten with 0 to disable some log regions. */ #ifndef CHIP_CONFIG_LOG_MODULE_NotSpecified #define CHIP_CONFIG_LOG_MODULE_NotSpecified 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Inet #define CHIP_CONFIG_LOG_MODULE_Inet 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Ble #define CHIP_CONFIG_LOG_MODULE_Ble 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_MessageLayer #define CHIP_CONFIG_LOG_MODULE_MessageLayer 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_SecurityManager #define CHIP_CONFIG_LOG_MODULE_SecurityManager 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_ExchangeManager #define CHIP_CONFIG_LOG_MODULE_ExchangeManager 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_TLV #define CHIP_CONFIG_LOG_MODULE_TLV 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_ASN1 #define CHIP_CONFIG_LOG_MODULE_ASN1 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Crypto #define CHIP_CONFIG_LOG_MODULE_Crypto 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Controller #define CHIP_CONFIG_LOG_MODULE_Controller 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Alarm #define CHIP_CONFIG_LOG_MODULE_Alarm 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_SecureChannel #define CHIP_CONFIG_LOG_MODULE_SecureChannel 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_BDX #define CHIP_CONFIG_LOG_MODULE_BDX 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_DataManagement #define CHIP_CONFIG_LOG_MODULE_DataManagement 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_DeviceControl #define CHIP_CONFIG_LOG_MODULE_DeviceControl 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_DeviceDescription #define CHIP_CONFIG_LOG_MODULE_DeviceDescription 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Echo #define CHIP_CONFIG_LOG_MODULE_Echo 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_FabricProvisioning #define CHIP_CONFIG_LOG_MODULE_FabricProvisioning 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_NetworkProvisioning #define CHIP_CONFIG_LOG_MODULE_NetworkProvisioning 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_ServiceDiscovery #define CHIP_CONFIG_LOG_MODULE_ServiceDiscovery 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_ServiceProvisioning #define CHIP_CONFIG_LOG_MODULE_ServiceProvisioning 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_SoftwareUpdate #define CHIP_CONFIG_LOG_MODULE_SoftwareUpdate 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_FailSafe #define CHIP_CONFIG_LOG_MODULE_FailSafe 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_TimeService #define CHIP_CONFIG_LOG_MODULE_TimeService 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Heartbeat #define CHIP_CONFIG_LOG_MODULE_Heartbeat 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_chipSystemLayer #define CHIP_CONFIG_LOG_MODULE_chipSystemLayer 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_EventLogging #define CHIP_CONFIG_LOG_MODULE_EventLogging 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Support #define CHIP_CONFIG_LOG_MODULE_Support 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_chipTool #define CHIP_CONFIG_LOG_MODULE_chipTool 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Zcl #define CHIP_CONFIG_LOG_MODULE_Zcl 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Shell #define CHIP_CONFIG_LOG_MODULE_Shell 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_DeviceLayer #define CHIP_CONFIG_LOG_MODULE_DeviceLayer 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_SetupPayload #define CHIP_CONFIG_LOG_MODULE_SetupPayload 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_AppServer #define CHIP_CONFIG_LOG_MODULE_AppServer 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Discovery #define CHIP_CONFIG_LOG_MODULE_Discovery 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_InteractionModel #define CHIP_CONFIG_LOG_MODULE_InteractionModel 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Test #define CHIP_CONFIG_LOG_MODULE_Test 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_OperationalSessionSetup #define CHIP_CONFIG_LOG_MODULE_OperationalSessionSetup 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_Automation #define CHIP_CONFIG_LOG_MODULE_Automation 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_CASESessionManager #define CHIP_CONFIG_LOG_MODULE_CASESessionManager 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_ICD #define CHIP_CONFIG_LOG_MODULE_ICD 1 #endif #ifndef CHIP_CONFIG_LOG_MODULE_FabricSync #define CHIP_CONFIG_LOG_MODULE_FabricSync 1 #endif /** * @enum LogCategory * * @brief * Identifies a category to which an particular error message * belongs. * */ enum LogCategory { /*!< * This log category indicates, when passed to SetLogFilter(), * that no messages should be logged. * */ kLogCategory_None = 0, /*!< * Indicates a category of log message that describes an unexpected * or severe failure. * * This log category indicates that a logged message describes * an unexpected or severe failure in the code. * * It should be used for things such as out-of-resource errors, * internal inconsistencies, API misuse, etc. In general, errors * that are expected to occur as part of normal operation, or * that are largely determined by external factors (e.g. network * errors, user/operator induced errors, etc.) should be logged * as kLogCategory_Progress messages, not as kLogCategory_Error * messages. * */ kLogCategory_Error = 1, /*!< * Indicates a category of log message that describes an event * that marks the start or end of a major activity, or a major * change in the state of the overall system. * * It should be reserved for high-level events. Such messages * should provide the log reader with a good sense of the * overall activity of the system at any point in time, while * being minimally verbose. Where necessary such messages should * include identifiers or other values that can be used to * correlate messages involving a common actor or subject * (e.g. connection ids, request ids, etc.) and/or to identify * types of actions being taken or handled (e.g. message types, * requested resource types, error numbers, etc.). * */ kLogCategory_Progress = 2, /*!< * Indicates a category of log message that describes detailed * information about an event or the state of the system. * * Such messages can be used to provide ancillary information * not suitable for the kLogCategory_Error and * kLogCategory_Progress categories. * */ kLogCategory_Detail = 3, /*!< * Indicates a category of log message that describes automation * information about an event or the state of the system. * * Such messages can be used by automation for test validation. * */ kLogCategory_Automation = 4, kLogCategory_Max = kLogCategory_Automation }; } // namespace Logging } // namespace chip