我想打印一些日志进行调试和测试,但现有的日志很大,所以我想将自己的日志打印到 stderr:
go run main.go 1>/dev/null
这样我就可以查看自己的日志。
我该怎么做?
有多种
方法可以向stderr
发送消息:
创建新
log.Logger
:l := log.New(os.Stderr, "", 1) l.Println("log message")
使用
fmt.Fprintf
:fmt.Fprintf(os.Stderr, "log message: %s", str)
使用
os.Stderr.WriteString
直接写入os.Stderr
:os.Stderr.WriteString("log message")
默认情况下,log
包打印到 os.Stderr
。
您也可以直接使用os.Stderr
(这是一个os.File
)。
在 Linux 系统上, 你也可以使用 syslog(3) 工具。缺省情况下, 底层的 openlog(3) 不会转到 stderr, 但可以更改。
请参阅 Go 软件包日志/系统日志。