我在我的一个工具中使用第三方库,该工具使用golang的标准日志记录。该库是https://github.com/jason0x43/go-toggl
现在我编写了一个命令行实用程序,用于检测并且我不希望在那里写入日志。我找到了Go: Disable a log.Logger?,但这涉及在自己的代码中禁用。如何禁用库中的日志记录?
答案 0 :(得分:3)
该软件包定义了它自己的记录器,不会导出它,并且不提供修改输出的钩子。您无法在不修改程序包代码的情况下更改日志目标。
此情况下的另一个选项是,由于记录器写入os.Stderr
,您可以将os.Stderr
重新定义为您自己的io.Writer
,以拦截并过滤那里的日志输出。这可能就像缓冲所有stderr输出一样简单,只有在出错时才打印出来。