|
|
@@ -381,13 +381,24 @@ func CloudbrainGetLog(ctx *context.Context) { |
|
|
|
return |
|
|
|
} |
|
|
|
result := GetLogFromModelDir(job.JobName, startLine, startLine+lines) |
|
|
|
//result := CloudbrainGetLogByJobId(job.JobID, job.JobName) |
|
|
|
if result == nil { |
|
|
|
log.Error("GetJobLog failed: %v", err, ctx.Data["MsgID"]) |
|
|
|
ctx.ServerError(err.Error(), err) |
|
|
|
return |
|
|
|
} |
|
|
|
ctx.JSON(http.StatusOK, result) |
|
|
|
|
|
|
|
re := map[string]interface{}{ |
|
|
|
"JobID": ID, |
|
|
|
"LogFileName": result["FileName"], |
|
|
|
"StartLine": startLine, |
|
|
|
"EndLine": startLine + lines, |
|
|
|
"Content": result["Content"], |
|
|
|
"Lines": lines, |
|
|
|
"CanLogDownload": result["Content"] != "", |
|
|
|
} |
|
|
|
//result := CloudbrainGetLogByJobId(job.JobID, job.JobName) |
|
|
|
|
|
|
|
ctx.JSON(http.StatusOK, re) |
|
|
|
} |
|
|
|
|
|
|
|
func GetLogFromModelDir(jobName string, startLine int, endLine int) map[string]interface{} { |
|
|
@@ -399,8 +410,10 @@ func GetLogFromModelDir(jobName string, startLine int, endLine int) map[string]i |
|
|
|
} |
|
|
|
|
|
|
|
re := "" |
|
|
|
fileName := "" |
|
|
|
for _, file := range files { |
|
|
|
if strings.HasSuffix(file.FileName, "log.txt") { |
|
|
|
fileName = file.FileName |
|
|
|
path := storage.GetMinioPath(jobName+"/model/", file.FileName) |
|
|
|
log.Info("path=" + path) |
|
|
|
reader, err := os.Open(path) |
|
|
@@ -432,8 +445,9 @@ func GetLogFromModelDir(jobName string, startLine int, endLine int) map[string]i |
|
|
|
} |
|
|
|
|
|
|
|
return map[string]interface{}{ |
|
|
|
"JobName": jobName, |
|
|
|
"Content": re, |
|
|
|
"JobName": jobName, |
|
|
|
"Content": re, |
|
|
|
"FileName": fileName, |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|