From 2fa02374fd7e0dbf26de3878df977c62b4e36fe5 Mon Sep 17 00:00:00 2001 From: mountain Date: Thu, 22 Aug 2024 11:56:50 +0900 Subject: [PATCH] =?UTF-8?q?=EB=A1=9C=EA=B7=B8=20=ED=8F=B4=EB=8D=94=20?= =?UTF-8?q?=EC=83=9D=EC=84=B1=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- client/operation.go | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/client/operation.go b/client/operation.go index 6687ce6..addd1ff 100644 --- a/client/operation.go +++ b/client/operation.go @@ -289,7 +289,7 @@ func (hc *houstonClient) launch(meta *procmeta) error { return err } - stdReader := func(jobName string, r io.ReadCloser, index int, logfile string) { + stdReader := func(jobName string, r io.ReadCloser, index int, logfilePath string) { defer func() { reco := recover() if reco != nil { @@ -311,8 +311,7 @@ func (hc *houstonClient) launch(meta *procmeta) error { reader := bufio.NewReader(r) var logWriter func([]byte) - if len(logfile) > 0 { - logfilePath := path.Join("logs", logfile) + if len(logfilePath) > 0 { targetFile, err := os.OpenFile(logfilePath, os.O_CREATE|os.O_APPEND|os.O_WRONLY, 0666) if err == nil && targetFile != nil { defer func() { @@ -333,7 +332,7 @@ func (hc *houstonClient) launch(meta *procmeta) error { } } } else { - logger.Println("failed to create log file :", logfilePath) + logger.Println("failed to create log file :", logfilePath, err) } } else { logWriter = func(buff []byte) { @@ -458,6 +457,12 @@ func (hc *houstonClient) launch(meta *procmeta) error { return v }) + if len(evalfile) > 0 { + logfolder := path.Join(path.Dir(meta.cmd.Args[0]), "logs") + os.MkdirAll(logfolder, 0666) + evalfile = path.Join(logfolder, evalfile) + } + go stdReader(meta.name, stdout, index, evalfile) logger.Println("startChildProcess :", meta.cmd.Args)