|
|
|
@@ -30,6 +30,7 @@ import ( |
|
|
|
"gitlink.org.cn/JointCloud/pcm-modelarts/client/modelartsservice" |
|
|
|
"gitlink.org.cn/JointCloud/pcm-modelarts/modelarts" |
|
|
|
modelartsclient "gitlink.org.cn/JointCloud/pcm-modelarts/modelarts" |
|
|
|
"io" |
|
|
|
"k8s.io/apimachinery/pkg/util/json" |
|
|
|
"log" |
|
|
|
"mime/multipart" |
|
|
|
@@ -550,15 +551,34 @@ func (m *ModelArtsLink) GetTrainingTaskLog(ctx context.Context, taskId string, i |
|
|
|
TaskId: "worker-0", |
|
|
|
TrainingJobId: taskId, |
|
|
|
} |
|
|
|
resp, err := m.modelArtsRpc.GetTrainingJobLogsPreview(ctx, req) |
|
|
|
|
|
|
|
//resp, err := m.modelArtsRpc.GetTrainingJobLogsPreview(ctx, req) |
|
|
|
stream, err := m.modelArtsRpc.GetTrainingJobLogStream(ctx, req) |
|
|
|
if err != nil { |
|
|
|
return "", err |
|
|
|
log.Fatalf("error calling StreamLogs: %v", err) |
|
|
|
} |
|
|
|
|
|
|
|
if strings.Contains(resp.Content, "404 Not Found") { |
|
|
|
resp.Content = "waiting for logs..." |
|
|
|
var fullLog string |
|
|
|
for { |
|
|
|
// 接收服务端发送的日志块 |
|
|
|
logEntry, err := stream.Recv() |
|
|
|
if err == io.EOF { |
|
|
|
// 流结束 |
|
|
|
break |
|
|
|
} |
|
|
|
if err != nil { |
|
|
|
log.Fatalf("接收日志块失败: %v", err) |
|
|
|
} |
|
|
|
// 拼接日志块 |
|
|
|
fullLog += logEntry.Message |
|
|
|
} |
|
|
|
return resp.Content, nil |
|
|
|
|
|
|
|
return fullLog, nil |
|
|
|
|
|
|
|
/* if strings.Contains(resp.Content, "404 Not Found") { |
|
|
|
= "waiting for logs..." |
|
|
|
}*/ |
|
|
|
//return resp.Content, nil |
|
|
|
} |
|
|
|
|
|
|
|
func (m *ModelArtsLink) GetTrainingTask(ctx context.Context, taskId string) (*collector.Task, error) { |
|
|
|
|