| 
    Link Kit C-SDK
    4.0.0
    
   | 
 
logpost模块头文件, 提供设备端日志上云的能力 更多...
#include <stdint.h>
类 | |
| struct | aiot_logpost_msg_t | 
| 日志数据结构体定义  更多... | |
| struct | aiot_logpost_event_t | 
| logpost模块内部发生值得用户关注的状态变化时, 通知用户的事件内容  更多... | |
宏定义 | |
| #define | STATE_LOGPOST_BASE (-0x1500) | 
| -0x1500~-0x15FF表达SDK在logpost模块内的状态码  更多... | |
| #define | STATE_LOGPOST_MQTT_HANDLE_IS_NULL (-0x1501) | 
| 用户未调用aiot_logpost_setopt 配置MQTT句柄  更多... | |
| #define | STATE_LOGPOST_POST_TURN_OFF (-0x1502) | 
| 日志上报被云端配置为关闭状态  更多... | |
| #define | STATE_LOGPOST_LOGLEVEL_ERROR (-0x1503) | 
| 日志消息的日志级别有误  更多... | |
| #define | STATE_LOGPOST_LOG_MODULE_NAME_IS_NULL (-0x1504) | 
| 日志消息的模块名称字段为NULL  更多... | |
| #define | STATE_LOGPOST_LOG_CONTENT_IS_NULL (-0x1505) | 
| 日志消息的日志内容字段为NULL  更多... | |
| #define | STATE_LOGPOST_LOG_CONTENT_TOO_LONG (-0x1506) | 
| 日志消息的日志内容字段字符串长度大于4096个字节  更多... | |
| #define | STATE_LOGPOST_LOG_RECV (-0x1507) | 
| 接收到服务器下行消息时的内部日志状态码  更多... | |
| #define | SATAE_LOGPOST_LOG_PARSE_MSG_FAILED (-0x1508) | 
| 解析服务器下行消息失败时的内部日志状态码  更多... | |
类型定义 | |
| typedef void(* | aiot_logpost_event_handler_t) (void *handle, const aiot_logpost_event_t *event, void *userdata) | 
| logpost模块内部发生值得用户关注的状态变化时, 通知用户所调用的事件回调函数  更多... | |
枚举 | |
| enum | aiot_logpost_option_t {  AIOT_LOGPOSTOPT_MQTT_HANDLE, AIOT_LOGPOSTOPT_EVENT_HANDLER, AIOT_LOGPOSTOPT_USERDATA, AIOT_LOGPOSTOPT_SYS_LOG, AIOT_LOGPOSTOPT_MAX }  | 
| aiot_logpost_setopt 接口的option参数可选值.  更多... | |
| enum | aiot_logpost_level_t {  AIOT_LOGPOST_LEVEL_FATAL, AIOT_LOGPOST_LEVEL_ERR, AIOT_LOGPOST_LEVEL_WARN, AIOT_LOGPOST_LEVEL_INFO, AIOT_LOGPOST_LEVEL_DEBUG }  | 
| 日志级别枚举类型定义  更多... | |
| enum | aiot_logpost_event_type_t { AIOT_LOGPOSTEVT_CONFIG_DATA } | 
| logpost模块内部发生值得用户关注的状态变化时, 通知用户的事件类型  更多... | |
函数 | |
| void * | aiot_logpost_init (void) | 
| 创建logpost会话实例, 并以默认值配置会话参数  更多... | |
| int32_t | aiot_logpost_setopt (void *handle, aiot_logpost_option_t option, void *data) | 
| 配置logpost会话  更多... | |
| int32_t | aiot_logpost_send (void *handle, aiot_logpost_msg_t *msg) | 
| 向服务器发送日志消息  更多... | |
| int32_t | aiot_logpost_deinit (void **handle) | 
| 结束logpost会话, 销毁实例并回收资源  更多... | |
logpost模块头文件, 提供设备端日志上云的能力
aiot_logpost_init创建一个日志上云实例, 保存实例句柄aiot_logpost_setopt配置AIOT_LOGPOSTOPT_MQTT_HANDLE选项以设置MQTT句柄, 此选项为强制配置选项aiot_logpost_setopt配置AIOT_LOGPOSTOPT_EVENT_HANDLER和AIOT_LOGPOSTOPT_USER_DATA选项以注册事件接收回调函数和用户上下文数据指针aiot_logpost_send发送日志消息前, 应先完成MQTT实例的建连 | #define STATE_LOGPOST_BASE (-0x1500) | 
-0x1500~-0x15FF表达SDK在logpost模块内的状态码
| #define STATE_LOGPOST_MQTT_HANDLE_IS_NULL (-0x1501) | 
用户未调用aiot_logpost_setopt 配置MQTT句柄
| #define STATE_LOGPOST_POST_TURN_OFF (-0x1502) | 
日志上报被云端配置为关闭状态
| #define STATE_LOGPOST_LOGLEVEL_ERROR (-0x1503) | 
日志消息的日志级别有误
| #define STATE_LOGPOST_LOG_MODULE_NAME_IS_NULL (-0x1504) | 
日志消息的模块名称字段为NULL
| #define STATE_LOGPOST_LOG_CONTENT_IS_NULL (-0x1505) | 
日志消息的日志内容字段为NULL
| #define STATE_LOGPOST_LOG_CONTENT_TOO_LONG (-0x1506) | 
日志消息的日志内容字段字符串长度大于4096个字节
| #define STATE_LOGPOST_LOG_RECV (-0x1507) | 
接收到服务器下行消息时的内部日志状态码
| #define SATAE_LOGPOST_LOG_PARSE_MSG_FAILED (-0x1508) | 
解析服务器下行消息失败时的内部日志状态码
| typedef void(* aiot_logpost_event_handler_t) (void *handle, const aiot_logpost_event_t *event, void *userdata) | 
logpost模块内部发生值得用户关注的状态变化时, 通知用户所调用的事件回调函数
| [in] | handle | logpost会话句柄 | 
| [in] | event | logpost模块中发生的事件的内容 | 
| [in] | userdata | 指向用户上下文数据的指针, 这个指针由用户通过调用aiot_logpost_setopt 配置AIOT_LOGPOSTOPT_USERDATA 选项设置 | 
aiot_logpost_setopt 接口的option参数可选值.
下文每个选项中的数据类型, 指的是aiot_logpost_setopt 中, data参数的数据类型
| enum aiot_logpost_level_t | 
| void* aiot_logpost_init | ( | void | ) | 
创建logpost会话实例, 并以默认值配置会话参数
| 非NULL | logpost实例的句柄 | 
| NULL | 初始化失败, 一般是内存分配失败导致 | 

| int32_t aiot_logpost_setopt | ( | void * | handle, | 
| aiot_logpost_option_t | option, | ||
| void * | data | ||
| ) | 
配置logpost会话
| [in] | handle | logpost会话句柄 | 
| [in] | option | 配置选项, 更多信息请参考aiot_logpost_option_t | 
| [in] | data | 配置选项数据, 更多信息请参考aiot_logpost_option_t | 
| <STATE_SUCCESS | 参数配置失败 | 
| STATE_SUCCESS | 参数配置成功 | 
| STATE_USER_INPUT_NULL_POINTER | 入参handle或data为NULL | 
| STATE_USER_INPUT_OUT_RANGE | 入参optioin的枚举值>=AIOT_LOGPOSTOPT_MAX | 
| others | 参考aiot_state_api.h | 

| int32_t aiot_logpost_send | ( | void * | handle, | 
| aiot_logpost_msg_t * | msg | ||
| ) | 
向服务器发送日志消息
| [in] | handle | logpost会话句柄 | 
| [in] | msg | 消息结构体, 可指定日志对应模块, 日志级别等, 更多信息请参考aiot_logpost_msg_t | 
| STATE_SUCCESS | 请求发送成功 | 
| STATE_USER_INPUT_NULL_POINTER | 入参handle或msg为NULL | 
| STATE_SYS_DEPEND_MALLOC_FAILED | 内存分配失败 | 
| STATE_LOGPOST_MQTT_HANDLE_IS_NULL | 用户未调用aiot_logpost_setopt 配置MQTT句柄 | 
| others | 参考aiot_state_api.h 或STATE_SHADOW_BASE 中对应的错误码说明 | 

| int32_t aiot_logpost_deinit | ( | void ** | handle | ) | 
结束logpost会话, 销毁实例并回收资源
| [in] | handle | 指向logpost会话句柄的指针 | 
| <STATE_SUCCESS | 执行失败 | 
| >=STATE_SUCCESS | 执行成功 | 

 1.8.11