From 9d32682a3bb64fc28de27acfd6ba5f2a73f9eeb0 Mon Sep 17 00:00:00 2001 From: liuzx Date: Mon, 15 Nov 2021 14:55:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8E=B7=E5=8F=96=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- routers/api/v1/repo/modelarts.go | 61 +++++++++++++++++++++++--------- 1 file changed, 45 insertions(+), 16 deletions(-) diff --git a/routers/api/v1/repo/modelarts.go b/routers/api/v1/repo/modelarts.go index 181d97983..052760041 100755 --- a/routers/api/v1/repo/modelarts.go +++ b/routers/api/v1/repo/modelarts.go @@ -120,11 +120,9 @@ func TrainJobGetLog(ctx *context.APIContext) { err error ) - log.Info("test") - var jobID = ctx.Params(":jobid") var versionName = ctx.Query("version_name") - var logFileName = ctx.Query("file_name") + // var logFileName = ctx.Query("file_name") var baseLine = ctx.Query("base_line") var order = ctx.Query("order") @@ -136,24 +134,33 @@ func TrainJobGetLog(ctx *context.APIContext) { return } - task, err := models.GetCloudbrainByJobIDAndVersionName(jobID, versionName) - if err != nil { - log.Error("GetCloudbrainByJobIDAndVersionName(%s) failed:%v", jobID, err.Error()) - ctx.JSON(http.StatusInternalServerError, map[string]interface{}{ - "err_msg": "GetCloudbrainByJobIDAndVersionName failed", - }) - return - } + // task, err := models.GetCloudbrainByJobIDAndVersionName(jobID, versionName) + // if err != nil { + // log.Error("GetCloudbrainByJobIDAndVersionName(%s) failed:%v", jobID, err.Error()) + // ctx.JSON(http.StatusInternalServerError, map[string]interface{}{ + // "err_msg": "GetCloudbrainByJobIDAndVersionName failed", + // }) + // return + // } - result, err := modelarts.GetTrainJobLog(jobID, strconv.FormatInt(task.VersionID, 10), baseLine, logFileName, order, modelarts.Lines) + resultLogFile, result, err := trainJobGetLogContent(jobID, versionName, baseLine, order) if err != nil { - log.Error("GetTrainJobLog(%s) failed:%v", jobID, err.Error()) - ctx.JSON(http.StatusInternalServerError, map[string]interface{}{ - "err_msg": "GetTrainJobLog failed", - }) + log.Error("trainJobGetLog(%s) failed:%v", jobID, err.Error()) + // ctx.RenderWithErr(err.Error(), tplModelArtsTrainJobShow, nil) return } + ctx.Data["log_file_name"] = resultLogFile.LogFileList[0] + + // result, err := modelarts.GetTrainJobLog(jobID, strconv.FormatInt(task.VersionID, 10), baseLine, logFileName, order, modelarts.Lines) + // if err != nil { + // log.Error("GetTrainJobLog(%s) failed:%v", jobID, err.Error()) + // ctx.JSON(http.StatusInternalServerError, map[string]interface{}{ + // "err_msg": "GetTrainJobLog failed", + // }) + // return + // } + ctx.JSON(http.StatusOK, map[string]interface{}{ "JobID": jobID, "StartLine": result.StartLine, @@ -162,3 +169,25 @@ func TrainJobGetLog(ctx *context.APIContext) { "Lines": result.Lines, }) } + +func trainJobGetLogContent(jobID string, versionName string, baseLine string, order string) (*models.GetTrainJobLogFileNamesResult, *models.GetTrainJobLogResult, error) { + task, err := models.GetCloudbrainByJobIDAndVersionName(jobID, versionName) + if err != nil { + log.Error("GetCloudbrainByJobID(%s) failed:%v", jobID, err.Error()) + return nil, nil, err + } + + resultLogFile, err := modelarts.GetTrainJobLogFileNames(jobID, strconv.FormatInt(task.VersionID, 10)) + if err != nil { + log.Error("GetTrainJobLogFileNames(%s) failed:%v", jobID, err.Error()) + return nil, nil, err + } + + result, err := modelarts.GetTrainJobLog(jobID, strconv.FormatInt(task.VersionID, 10), baseLine, resultLogFile.LogFileList[0], order, modelarts.Lines) + if err != nil { + log.Error("GetTrainJobLog(%s) failed:%v", jobID, err.Error()) + return nil, nil, err + } + + return resultLogFile, result, err +}