telegraf/internal/process/process_windows.go

20 lines
340 B
Go
Raw Normal View History

//go:build windows
2020-06-05 07:09:22 +08:00
package process
import (
2020-07-02 23:59:29 +08:00
"context"
2020-06-05 07:09:22 +08:00
"os/exec"
"time"
)
func (p *Process) gracefulStop(ctx context.Context, cmd *exec.Cmd, timeout time.Duration) {
2020-07-02 23:59:29 +08:00
select {
case <-time.After(timeout):
if err := cmd.Process.Kill(); err != nil {
p.Log.Errorf("Error after killing process: %v", err)
}
2020-07-02 23:59:29 +08:00
case <-ctx.Done():
}
2020-06-05 07:09:22 +08:00
}