gpt4 book ai didi

Golang - 创建自定义记录器以跨应用程序共享文件和包

转载 作者:IT王子 更新时间:2023-10-29 02:21:11 25 4
gpt4 key购买 nike

在我的程序中有很多地方我应该创建如下日志

log.Println("[Build]: bla bla“)

log.Println(“[INFO]: bla bla“)

log.Printf(“[ERROR]: bla bla“)

log.Println(“[WARNING]: bla bla“)

我将它用于应用程序内不同包中的所有日志记录复制这个有点令人沮丧,有没有办法创建一些通用的我可以在我的程序中简单地重新使用它。

我阅读了有关 logrus 等的内容,但它们提供了一些方法来做到这一点,但没有提供一些自定义方法或也许我错过了什么。

我的程序是命令行工具

最佳答案

最好使用更合适的记录器,如 zaplogrus .也更喜欢将记录器作为参数显式传递并避免使用全局记录器。

然而,如果需要使用内置的精确日志记录工作流,使用提供的示例输出,可以使用适当的前缀定义它们,而不是在每个字符串中重复级别:

var (
warnlog = log.New(os.Stderr, "[ warn ]", log.Ltime|log.Lshortfile)
infolog = log.New(os.Stderr, "[ info ]", log.Ltime|log.Lshortfile)
buildlog = log.New(os.Stderr, "[ build ]", log.Ltime|log.Lshortfile)
errlog = log.New(os.Stderr, "[ error ]", log.Ltime|log.Lshortfile)
)

关于Golang - 创建自定义记录器以跨应用程序共享文件和包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48911208/

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