核心转储上传服务¶
如需调查已出售设备中的 crash 事件,则需要回收回溯信息进行分析。核心转储上传服务 (core dump upload service) 支持通过 HTTP 将存储在设备分区中的回溯信息传输回来。选择 ESP_COREDUMP_ENABLE_TO_FLASH,即可启用此功能。
应用示例¶
以下示例展示了该 API 的实现方式。
Header File¶
Functions¶
- 
bool 
coredump_need_upload()¶ This function will check the reset code and determine whether to upload the coredump.
- Return
 true: last reboot is a abnormal reset.
false
- 
esp_err_t 
coredump_upload(periph_service_handle_t handle, char *url)¶ Upload the core dump image to the url. This function will block the current task until the upload process finished.
- Return
 ESP_OK
ESP_FAIL
- Parameters
 [in] handle: the ‘periph_service_handle_t’[in] url: server addr
- 
periph_service_handle_t 
coredump_upload_service_create(coredump_upload_service_config_t *config)¶ Create the core dump upload service instance.
- Return
 NULL: Failed
Others: Success
- Parameters
 config: configuration of the OTA service
Structures¶
- 
struct 
coredump_upload_service_config_t¶ coredump service configuration parameters
Public Members
- 
int 
task_stack¶ >0 Service task stack; =0 with out task created
- 
int 
task_prio¶ Service task priority (based on freeRTOS priority)
- 
int 
task_core¶ Service task running in core (0 or 1)
- 
periph_service_cb 
evt_cb¶ Service callback function
- 
void *
cb_ctx¶ Callback context
- 
bool (*
do_post)(char *url, uint8_t *data, size_t len)¶ POST interface, users can override this to customize the http client. if left NULL, the service will use the default one
- 
int 
 
Macros¶
- 
COREDUMP_UPLOAD_SERVICE_DEFAULT_CONFIG()¶