Commit 1e1d2d95 authored by duanjinfei's avatar duanjinfei

handler output is nil resp

parent 75f05d54
...@@ -254,18 +254,23 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -254,18 +254,23 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
if readBody != nil { if readBody != nil {
data := parseData(readBody) data := parseData(readBody)
if data != nil { if data != nil {
isRedirect := false
isSuccess := false
switch v := data.(type) { switch v := data.(type) {
case [][]string: case [][]string:
{ {
res := data.([][]string) res := data.([][]string)
log.Info("data is [][]string type") log.Info("data is [][]string type")
apiRes := make([][]string, 1) apiRes := make([][]string, 1)
isRedirect := false
for _, innerSlice := range res { for _, innerSlice := range res {
apiResOneArr := make([]string, 0) apiResOneArr := make([]string, 0)
for _, respStr := range innerSlice { for _, respStr := range innerSlice {
if respStr == "" || respStr == "null" {
continue
}
if !isUseFileCache { if !isUseFileCache {
apiResOneArr = append(apiResOneArr, respStr) apiResOneArr = append(apiResOneArr, respStr)
isSuccess = true
continue continue
} }
ossUri, err := t.getFileCache(respStr, taskMsg, taskParam, taskCmd) ossUri, err := t.getFileCache(respStr, taskMsg, taskParam, taskCmd)
...@@ -275,6 +280,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -275,6 +280,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
} }
if ossUri == "" { if ossUri == "" {
apiResOneArr = append(apiResOneArr, respStr) apiResOneArr = append(apiResOneArr, respStr)
isSuccess = true
} }
continue continue
} }
...@@ -287,10 +293,16 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -287,10 +293,16 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
break break
} else { } else {
apiResOneArr = append(apiResOneArr, ossUri) apiResOneArr = append(apiResOneArr, ossUri)
isSuccess = true
} }
} }
apiRes = append(apiRes, apiResOneArr) apiRes = append(apiRes, apiResOneArr)
} }
if !isSuccess {
taskExecResult.TaskExecError = fmt.Sprintf("%s-%s", "Container output is nil", string(readBody))
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
return
}
if !isRedirect { if !isRedirect {
apiResBody := utils.EncodeJsonEscapeHTML(apiRes) apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody taskExecResult.TaskRespBody = apiResBody
...@@ -301,10 +313,13 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -301,10 +313,13 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
res := data.([]string) res := data.([]string)
log.Info("data is []string type") log.Info("data is []string type")
apiRes := make([]string, 0) apiRes := make([]string, 0)
isRedirect := false
for _, respStr := range res { for _, respStr := range res {
if respStr == "" || respStr == "null" {
continue
}
if !isUseFileCache { if !isUseFileCache {
apiRes = append(apiRes, respStr) apiRes = append(apiRes, respStr)
isSuccess = true
continue continue
} }
ossUri, err := t.getFileCache(respStr, taskMsg, taskParam, taskCmd) ossUri, err := t.getFileCache(respStr, taskMsg, taskParam, taskCmd)
...@@ -314,6 +329,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -314,6 +329,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
} }
if ossUri == "" { if ossUri == "" {
apiRes = append(apiRes, respStr) apiRes = append(apiRes, respStr)
isSuccess = true
} }
continue continue
} }
...@@ -323,11 +339,18 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -323,11 +339,18 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
apiResBody := utils.EncodeJsonEscapeHTML(ossUri) apiResBody := utils.EncodeJsonEscapeHTML(ossUri)
taskExecResult.TaskRespBody = apiResBody taskExecResult.TaskRespBody = apiResBody
isRedirect = true isRedirect = true
isSuccess = true
break break
} else { } else {
apiRes = append(apiRes, ossUri) apiRes = append(apiRes, ossUri)
isSuccess = true
} }
} }
if !isSuccess {
taskExecResult.TaskExecError = fmt.Sprintf("%s-%s", "Container output is nil", string(readBody))
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
return
}
if !isRedirect { if !isRedirect {
apiResBody := utils.EncodeJsonEscapeHTML(apiRes) apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody taskExecResult.TaskRespBody = apiResBody
...@@ -341,8 +364,12 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -341,8 +364,12 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
apiRes := make([]string, 0) apiRes := make([]string, 0)
isRedirect := false isRedirect := false
for _, respStr := range resArr { for _, respStr := range resArr {
if respStr == "" || respStr == "null" {
continue
}
if !isUseFileCache { if !isUseFileCache {
apiRes = append(apiRes, respStr) apiRes = append(apiRes, respStr)
isSuccess = true
continue continue
} }
ossUri, err := t.getFileCache(respStr, taskMsg, taskParam, taskCmd) ossUri, err := t.getFileCache(respStr, taskMsg, taskParam, taskCmd)
...@@ -352,6 +379,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -352,6 +379,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
} }
if ossUri == "" { if ossUri == "" {
apiRes = append(apiRes, respStr) apiRes = append(apiRes, respStr)
isSuccess = true
} }
continue continue
} }
...@@ -361,11 +389,18 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -361,11 +389,18 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
apiResBody := utils.EncodeJsonEscapeHTML(ossUri) apiResBody := utils.EncodeJsonEscapeHTML(ossUri)
taskExecResult.TaskRespBody = apiResBody taskExecResult.TaskRespBody = apiResBody
isRedirect = true isRedirect = true
isSuccess = true
break break
} else { } else {
apiRes = append(apiRes, ossUri) apiRes = append(apiRes, ossUri)
isSuccess = true
} }
} }
if !isSuccess {
taskExecResult.TaskExecError = fmt.Sprintf("%s-%s", "Container output is nil", string(readBody))
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
return
}
if !isRedirect { if !isRedirect {
apiResBody := utils.EncodeJsonEscapeHTML(apiRes) apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody taskExecResult.TaskRespBody = apiResBody
...@@ -412,7 +447,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -412,7 +447,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
} }
taskExecResult.TaskExecError = fmt.Sprintf("%s,Container Http Code:%d,body:%s", "Container is exec failed", post.StatusCode, string(all)) taskExecResult.TaskExecError = fmt.Sprintf("%s,Container Http Code:%d,body:%s", "Container is exec failed", post.StatusCode, string(all))
} else { } else {
taskExecResult.TaskExecError = fmt.Sprintf("%s,Container Http Code:%d,body:%s", "Read container body failed", post.StatusCode, "") taskExecResult.TaskExecError = fmt.Sprintf("%s,Container Http Code:%d,body:%s", "Container resp body is nil", post.StatusCode, "")
} }
log.WithField("error", post.Body).WithField("taskId", taskMsg.TaskId).Error("Exec task result is failed") log.WithField("error", post.Body).WithField("taskId", taskMsg.TaskId).Error("Exec task result is failed")
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment