gpt4 book ai didi

logging - Golang 记录器致命

转载 作者:数据小太阳 更新时间:2023-10-29 03:41:28 26 4
gpt4 key购买 nike

package main

import (
"bytes"
"fmt"
"log"
)

func main() {
// Log into byte
var buf bytes.Buffer
logInfo := log.New(&buf, "[Info] ", log.Lshortfile)
logInfo.Print("Hello, log file!")
logInfo.Printf("Hello, %s", "crazy")
fmt.Print(&buf)
logInfo.Fatalln("Ut oh")
fmt.Print(&buf)
}

你好。我正在尝试使用 log.Fatal 或 log.Fatalln 而不是使用 log.New 和 os.Exit。但是,记录器似乎没有记录“Ut oh”部分 (logInfo.Fatalln)

以下是预期的输出:

[Info] main.go:17: Hello, log file!
[Info] main.go:18: Hello, crazy
[Info] main.go:17: Hello, log file!
[Info] main.go:18: Hello, crazy
[Info] main.go:xx: Ut oh

以下是我得到的:

[Info] main.go:17: Hello, log file!
[Info] main.go:18: Hello, crazy

it seems like it didn't do anything from logInfo.Fatalln("Ut oh")

你能告诉我我错过了什么吗?谢谢

最佳答案

log.Fatalln 退出您的应用,因此第二个 fmt.Print(&buf) 不会执行。

将您的记录器更改为写入 os.Stderr 或其他内容,您将看到 Ut oh 打印。

关于logging - Golang 记录器致命,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31116503/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com