Go编程:日志处理、命令行工具开发与并发编程
1. 日志处理技巧
在Go编程中,我们可以使用 io.Discard 来处理日志记录。 io.Discard 会丢弃所有的 Write() 调用,不做任何处理。下面是一个示例代码 discard.go :
func main() {
if len(os.Args) == 1 {
log.Println("Enabling logging!")
log.SetOutput(os.Stderr)
} else {
log.SetOutput(os.Stderr)
log.Println("Disabling logging!")
log.SetOutput(io.Discard)
log.Println("NOT GOING TO GET THAT!")
}
}
上述代码中,当命令行参数只有一个时,日志功能开启;否则,日志功能关闭。关闭日志的语句是 log.SetOutput(io.Discard) 。运行示例如下:
$ go run discard.go
2023/08/22 21:35:17 Enabling logging!
$ go run discard.go 1
2023/08/22 21:35:21 Disabl
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



