From 754cff4d469125bf93c0046aba17a2f27619f3ef Mon Sep 17 00:00:00 2001 From: wayne0926 Date: Sun, 26 Apr 2026 22:12:39 +0800 Subject: [PATCH] fix: clean up docker process in DownloadContainerLogs on timeout --- agent/app/service/container.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/agent/app/service/container.go b/agent/app/service/container.go index c0e1c8da78e5..44e38480973e 100644 --- a/agent/app/service/container.go +++ b/agent/app/service/container.go @@ -1076,14 +1076,18 @@ func (u *ContainerService) DownloadContainerLogs(containerType, container, since } stdout, err := dockerCmd.StdoutPipe() if err != nil { - _ = dockerCmd.Process.Signal(syscall.SIGTERM) return err } dockerCmd.Stderr = dockerCmd.Stdout if err := dockerCmd.Start(); err != nil { - _ = dockerCmd.Process.Signal(syscall.SIGTERM) return err } + defer func() { + if dockerCmd.Process != nil { + _ = dockerCmd.Process.Kill() + _ = dockerCmd.Wait() + } + }() tempFile, err := os.CreateTemp("", "cmd_output_*.txt") if err != nil {