gpt4 book ai didi

GoWorkers 如何将日志存储到文件中

转载 作者:IT王子 更新时间:2023-10-29 01:59:20 25 4
gpt4 key购买 nike

如何将来自 GoWorkers ( docs ) 的日志存储到文件中。我显示有一个 WorkersLogger 接口(interface),但我不明白如何使用它。

目前我有这个:

func main() {
workers.Configure(map[string]string)
workers.Middleware.Append(&midRetry{})
workers.Process("imp", worker.InitJob, 30)
workers.Run()
}

type midRetry struct{}
func (r *midRetry) Call(queue string, message *workers.Msg, next func() bool) (acknowledge bool) {
acknowledge = next()
return
}

我想在 midRetry 结构中创建一个 chan string ,并在 Call 内部在 channel 上发送消息,并在 main 中接收它们,然后将它们写入文件,但我觉得有是更好的方法。

最佳答案

WorkerLogger 接口(interface)只是一个用于实现 PrintlnPrintf 方法的结构的接口(interface)。

您可以简单地定义一个新的 log.Logger,给它一个 os.File 作为输出 (see the constructor),然后设置全局变量 workers .Logger 到这个新的记录器。

示例:

file, _ := os.Create("log.txt")
workers.Logger = log.New(file, "[worker] ", log.LstdFlags)

关于GoWorkers 如何将日志存储到文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31968528/

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