Bagaimana untuk Mengalihkan Output Exec ke Log masuk Go?

Linda Hamilton
Lepaskan: 2024-11-06 14:36:02
asal
402 orang telah melayarinya

How to Redirect Exec Output to a Log in Go?

Menyalin Output Exec untuk Log masuk Go

In Go, mengubah hala output proses yang berjalan lama atau tidak selesai ke log boleh mencabar. Sementara menunggu proses selesai membolehkan penangkapan keluaran mudah, pengelogan masa nyata dalam persekitaran bukan terminal memerlukan pendekatan yang berbeza.

Satu penyelesaian melibatkan mencipta paip untuk menyambungkan stdout proses kepada pengimbas buffer:

stdout, err := cmd.StdoutPipe()
if err != nil {
    return 0, err
}

// start the command after having set up the pipe
if err := cmd.Start(); err != nil {
    return 0, err
}

// read command's stdout line by line
in := bufio.NewScanner(stdout)

for in.Scan() {
    log.Printf(in.Text()) // write each line to your log, or anything you need
}
if err := in.Err(); err != nil {
    log.Printf("error: %s", err)
}
Salin selepas log masuk

Kod ini mencipta paip stdout, memulakan arahan dan kemudian menggunakan pengimbas untuk membaca output baris demi baris. Setiap baris kemudiannya boleh dilog atau diproses mengikut keperluan. Dengan mengendalikan Stdout dengan cara ini, anda boleh mengubah hala output proses ke log anda semasa ia masih berjalan, memastikan pengelogan maklumat penting untuk perkhidmatan anda tepat pada masanya.

Atas ialah kandungan terperinci Bagaimana untuk Mengalihkan Output Exec ke Log masuk Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!