summaryrefslogtreecommitdiff
path: root/plugin
diff options
context:
space:
mode:
authorfengweihao <[email protected]>2021-07-29 09:32:59 +0800
committerfengweihao <[email protected]>2021-07-29 09:32:59 +0800
commit319afbc11b8519969aa49669c15ebe3f88b441cc (patch)
tree8d4760d15c3a36065c22ec7cbf85bebd0b3037e0 /plugin
parent632a609017340df7e1774e497dd07fd599219d5b (diff)
bugfix:修复上传文件命中assertv4.5.6-202107
Diffstat (limited to 'plugin')
-rw-r--r--plugin/business/pangu-http/src/pangu_logger.cpp98
1 files changed, 57 insertions, 41 deletions
diff --git a/plugin/business/pangu-http/src/pangu_logger.cpp b/plugin/business/pangu-http/src/pangu_logger.cpp
index e02493a..56d0b17 100644
--- a/plugin/business/pangu-http/src/pangu_logger.cpp
+++ b/plugin/business/pangu-http/src/pangu_logger.cpp
@@ -245,6 +245,12 @@ int pangu_send_log(struct pangu_logger* handle, const struct pangu_log* log_msg)
}
}
+ char log_file_upload_req_path[TFE_STRING_MAX]={0}, cont_type_whole[TFE_STRING_MAX]={0};
+ char log_file_upload_resp_path[TFE_STRING_MAX]={0};
+ memset(log_file_upload_req_path, 0, sizeof(log_file_upload_req_path));
+ memset(log_file_upload_resp_path, 0, sizeof(log_file_upload_resp_path));
+ memset(cont_type_whole, 0, sizeof(cont_type_whole));
+
for(size_t i=0; i<log_msg->result_num; i++)
{
if(log_msg->result[i].do_log!=1)
@@ -252,65 +258,75 @@ int pangu_send_log(struct pangu_logger* handle, const struct pangu_log* log_msg)
continue;
}
- char log_file_upload_path[TFE_STRING_MAX]={0}, cont_type_whole[TFE_STRING_MAX]={0};
struct tango_cache_meta_put meta;
char* log_file_key=NULL;;
const char* cont_type_val;
if(log_msg->req_body!=NULL)
{
- memset(&meta, 0, sizeof(meta));
- asprintf(&log_file_key, "%s.reqbody", http->req->req_spec.url);
- meta.url=log_file_key;
- cont_type_val=tfe_http_std_field_read(http->req, TFE_HTTP_CONT_TYPE);
- if(cont_type_val!=NULL)
- {
- snprintf(cont_type_whole, sizeof(cont_type_whole), "Content-Type:%s", cont_type_val);
- meta.std_hdr[0]=cont_type_whole;
- }
- meta.user_log_name=1;
- tmp=cache_evbase_upload_once_evbuf(handle->log_file_upload_instance, NULL,
- log_msg->req_body,
- &meta,
- log_file_upload_path, sizeof(log_file_upload_path));
- if(tmp==0)
+ if(log_file_upload_req_path[0] != '\0')
{
- cJSON_AddStringToObject(common_obj, "http_request_body", log_file_upload_path);
+ cJSON_AddStringToObject(common_obj, "http_request_body", log_file_upload_req_path);
}
else
{
- TFE_LOG_ERROR(handle->local_logger, "Upload req_body failed.");
+ memset(&meta, 0, sizeof(meta));
+ asprintf(&log_file_key, "%s.reqbody", http->req->req_spec.url);
+ meta.url=log_file_key;
+ cont_type_val=tfe_http_std_field_read(http->req, TFE_HTTP_CONT_TYPE);
+ if(cont_type_val!=NULL)
+ {
+ snprintf(cont_type_whole, sizeof(cont_type_whole), "Content-Type:%s", cont_type_val);
+ meta.std_hdr[0]=cont_type_whole;
+ }
+ meta.user_log_name=1;
+ tmp=cache_evbase_upload_once_evbuf(handle->log_file_upload_instance, NULL,
+ log_msg->req_body,
+ &meta,
+ log_file_upload_req_path, sizeof(log_file_upload_req_path));
+ if(tmp==0)
+ {
+ cJSON_AddStringToObject(common_obj, "http_request_body", log_file_upload_req_path);
+ }
+ else
+ {
+ TFE_LOG_ERROR(handle->local_logger, "Upload req_body failed.");
+ }
+ free(log_file_key);
}
- free(log_file_key);
}
if(log_msg->resp_body!=NULL)
{
- memset(log_file_upload_path, 0, sizeof(log_file_upload_path));
- memset(cont_type_whole, 0, sizeof(cont_type_whole));
-
- memset(&meta, 0, sizeof(meta));
- asprintf(&log_file_key, "%s.respbody", http->req->req_spec.url);
- meta.url=log_file_key;
- cont_type_val=tfe_http_std_field_read(http->resp, TFE_HTTP_CONT_TYPE);
- if(cont_type_val!=NULL)
- {
- snprintf(cont_type_whole, sizeof(cont_type_whole), "Content-Type:%s", cont_type_val);
- meta.std_hdr[0]=cont_type_whole;
- }
- meta.user_log_name=1;
- tmp=cache_evbase_upload_once_evbuf(handle->log_file_upload_instance, NULL,
- log_msg->resp_body,
- &meta,
- log_file_upload_path, sizeof(log_file_upload_path));
-
- if(tmp==0)
+ if(log_file_upload_resp_path[0] != '\0')
{
- cJSON_AddStringToObject(common_obj, "http_response_body", log_file_upload_path);
+ cJSON_AddStringToObject(common_obj, "http_response_body", log_file_upload_resp_path);
}
else
{
- TFE_LOG_ERROR(handle->local_logger, "Upload resp_body failed.");
+ memset(&meta, 0, sizeof(meta));
+ asprintf(&log_file_key, "%s.respbody", http->req->req_spec.url);
+ meta.url=log_file_key;
+ cont_type_val=tfe_http_std_field_read(http->resp, TFE_HTTP_CONT_TYPE);
+ if(cont_type_val!=NULL)
+ {
+ snprintf(cont_type_whole, sizeof(cont_type_whole), "Content-Type:%s", cont_type_val);
+ meta.std_hdr[0]=cont_type_whole;
+ }
+ meta.user_log_name=1;
+ tmp=cache_evbase_upload_once_evbuf(handle->log_file_upload_instance, NULL,
+ log_msg->resp_body,
+ &meta,
+ log_file_upload_resp_path, sizeof(log_file_upload_resp_path));
+
+ if(tmp==0)
+ {
+ cJSON_AddStringToObject(common_obj, "http_response_body", log_file_upload_resp_path);
+ }
+ else
+ {
+ TFE_LOG_ERROR(handle->local_logger, "Upload resp_body failed.");
+ }
+ free(log_file_key);
}
- free(log_file_key);
}
}