diff --git a/routers/api/v1/repo/cloudbrain.go b/routers/api/v1/repo/cloudbrain.go index e4ed4a8b9..38409d505 100755 --- a/routers/api/v1/repo/cloudbrain.go +++ b/routers/api/v1/repo/cloudbrain.go @@ -391,9 +391,9 @@ func CloudbrainGetLog(ctx *context.Context) { "JobID": ID, "LogFileName": result["FileName"], "StartLine": startLine, - "EndLine": startLine + lines, + "EndLine": result["endLine"], "Content": result["Content"], - "Lines": lines, + "Lines": result["lines"], "CanLogDownload": result["Content"] != "", } //result := CloudbrainGetLogByJobId(job.JobID, job.JobName) @@ -411,6 +411,8 @@ func GetLogFromModelDir(jobName string, startLine int, endLine int) map[string]i re := "" fileName := "" + count := 0 + fileEndLine := endLine for _, file := range files { if strings.HasSuffix(file.FileName, "log.txt") { fileName = file.FileName @@ -420,7 +422,7 @@ func GetLogFromModelDir(jobName string, startLine int, endLine int) map[string]i defer reader.Close() if err == nil { r := bufio.NewReader(reader) - for i := 0; i < endLine; i++ { + for i := 0; i <= endLine; i++ { line, error := r.ReadString('\n') log.Info("line=" + line) if error == io.EOF { @@ -431,9 +433,11 @@ func GetLogFromModelDir(jobName string, startLine int, endLine int) map[string]i log.Info("read file error." + error.Error()) break } + fileEndLine = i if error == nil { if i >= startLine { re = re + line + count++ } } } @@ -448,6 +452,8 @@ func GetLogFromModelDir(jobName string, startLine int, endLine int) map[string]i "JobName": jobName, "Content": re, "FileName": fileName, + "lines": count, + "endLine": fileEndLine, } }