AWS IoT Device Defender v1.4.0
AWS IoT Device Defender Client Library
 
Loading...
Searching...
No Matches
defender_config_defaults.h File Reference

Default config values for the AWS IoT Device Defender Client Library. More...

Go to the source code of this file.

Macros

#define DEFENDER_DO_NOT_USE_CUSTOM_CONFIG
 Define this macro to build the AWS IoT Device Defender Client Library without the custom config file defender_config.h.
 
#define DEFENDER_USE_LONG_KEYS   0
 Set it to 1 to enable use of long key names in the defender report.
 
#define LogError(message)
 Macro used in the Device Defender client library to log error messages.
 
#define LogWarn(message)
 Macro used in the Device Defender client library to log warning messages.
 
#define LogInfo(message)
 Macro used in the Device Defender client library to log info messages.
 
#define LogDebug(message)
 Macro used in the Device Defender client library to log debug messages.
 

Detailed Description

Default config values for the AWS IoT Device Defender Client Library.

Macro Definition Documentation

◆ DEFENDER_DO_NOT_USE_CUSTOM_CONFIG

#define DEFENDER_DO_NOT_USE_CUSTOM_CONFIG

Define this macro to build the AWS IoT Device Defender Client Library without the custom config file defender_config.h.

Without the custom config, the the AWS IoT Device Defender Client Library builds with default values of config macros defined in the defender_config_defaults.h file.

If a custom config file is provided, then DEFENDER_DO_NOT_USE_CUSTOM_CONFIG must not be defined.

Default value: DEFENDER_DO_NOT_USE_CUSTOM_CONFIG is not defined by default and the library expects a defender_config.h file.

◆ DEFENDER_USE_LONG_KEYS

#define DEFENDER_USE_LONG_KEYS   0

Set it to 1 to enable use of long key names in the defender report.

AWS IoT Device Defender Service supports both long and short names for keys in the report sent by a device. For example,

A device defender report using long key names:

{
"header": {
"report_id": 1530304554,
"version": "1.0"
},
"metrics": {
"network_stats": {
"bytes_in": 29358693495,
"bytes_out": 26485035,
"packets_in": 10013573555,
"packets_out": 11382615
}
}
}

An equivalent report using short key names:

{
"hed": {
"rid": 1530304554,
"v": "1.0"
},
"met": {
"ns": {
"bi": 29358693495,
"bo": 26485035,
"pi": 10013573555,
"po": 11382615
}
}
}

Default value: 0 as short key names are preferred option for resource constrained devices because they result in smaller report size. If you want to use long key names instead, set DEFENDER_USE_LONG_KEYS to 1 in the defender_config.h file.

◆ LogError

#define LogError (   message)

Macro used in the Device Defender client library to log error messages.

To enable error logging, this macro should be mapped to an application-specific logging implementation.

Note
This logging macro is called in the Device Defender client library with parameters wrapped in double parentheses to be ISO C89/C90 standard compliant. For a reference POSIX implementation of the logging macros, refer to the defender_config.h file, and the logging-stack in demos folder of the AWS IoT Embedded C SDK repository.

Default value: Error logs are turned off, and no code is generated for calls to the macro in the Device Defender client library on compilation.

◆ LogWarn

#define LogWarn (   message)

Macro used in the Device Defender client library to log warning messages.

To enable warning logging, this macro should be mapped to an application-specific logging implementation.

Note
This logging macro is called in the Device Defender client library with parameters wrapped in double parentheses to be ISO C89/C90 standard compliant. For a reference POSIX implementation of the logging macros, refer to the defender_config.h file, and the logging-stack in demos folder of the AWS IoT Embedded C SDK repository.

Default value: Warning logs are turned off, and no code is generated for calls to the macro in the Device Defender client library on compilation.

◆ LogInfo

#define LogInfo (   message)

Macro used in the Device Defender client library to log info messages.

To enable info logging, this macro should be mapped to an application-specific logging implementation.

Note
This logging macro is called in the Device Defender client library with parameters wrapped in double parentheses to be ISO C89/C90 standard compliant. For a reference POSIX implementation of the logging macros, refer to the defender_config.h file, and the logging-stack in demos folder of the AWS IoT Embedded C SDK repository.

Default value: Info logs are turned off, and no code is generated for calls to the macro in the Device Defender client library on compilation.

◆ LogDebug

#define LogDebug (   message)

Macro used in the Device Defender client library to log debug messages.

To enable debug logging, this macro should be mapped to an application-specific logging implementation.

Note
This logging macro is called in the Device Defender client library with parameters wrapped in double parentheses to be ISO C89/C90 standard compliant. For a reference POSIX implementation of the logging macros, refer to the defender_config.h file, and the logging-stack in demos folder of the AWS IoT Embedded C SDK repository.

Default value: Debug logs are turned off, and no code is generated for calls to the macro in the Device Defender client library on compilation.