在 Go 中将日志写入文件
尝试使用标准 Go 日志记录包将日志写入文件时,用户可能会遇到问题日志文件已创建但仍为空。要解决此问题,必须了解将日志写入文件的正确方法。
在提供的代码中,您尝试了多种方法,包括:
但是,所有这些方法都失败了,因为 os.Open("logfile") 以只读方式打开文件,不适合写日志。
正确的做法是使用 os.OpenFile("testlogfile", os.O_RDWR | os.O_CREATE | os.O_APPEND,0666)。这会打开文件进行读写,允许将日志附加到文件中。
通过添加此行并将日志输出设置到文件中,您可以成功将日志写入到 Go 中的文件中:
f, err := os.OpenFile("testlogfile", os.O_RDWR | os.O_CREATE | os.O_APPEND, 0666) if err != nil { log.Fatalf("error opening file: %v", err) } defer f.Close() log.SetOutput(f) log.Println("This is a test log entry")
以上是为什么我的 Go 日志没有写入文件?的详细内容。更多信息请关注PHP中文网其他相关文章!