在 glog 包中设置日志记录级别
Set logging level in glog package
如何将 golang glog 包的日志记录级别设置为错误。
example.go:
package main
import (
"github.com/golang/glog"
"flag"
)
func main() {
flag.Parse()
glog.Info("Info level")
glog.Error("Error level")
glog.Flush()
}
$ go run example.go -logtostderr=true -stderrthreshold=ERROR
I1214 15:46:00.743002 13429 example.go:10] Info level
E1214 15:46:00.743211 13429 example.go:11] Error level
在上面的示例中,我已将 stderrthreshold
标志设置为 ERROR,但我仍然收到 INFO 级别的日志。我只想要 ERROR 级别的日志。
默认情况下,glog 会写入
- 所有日志消息到日志文件(它们默认在
/tmp
中创建);
- 将严重性为
stderrthreshold
或更高级别的消息记录到 stderr。
通过使用 -logtostderr=true
标志,此行为已更改:
Logs are written to standard error instead of to files.
- 没有日志消息写入日志文件;
- 所有日志消息都写入 stderr。
stderrthreshold
大概在使用 -logtostderr=true
时没有效果。在您的调用中它无论如何都没有效果,因为默认阈值已经是 ERROR
.
总而言之,仅 运行 go run example.go
不带任何命令行参数,只有严重程度为 ERROR
或更高级别的日志消息会根据需要写入 stderr。
如何将 golang glog 包的日志记录级别设置为错误。
example.go:
package main
import (
"github.com/golang/glog"
"flag"
)
func main() {
flag.Parse()
glog.Info("Info level")
glog.Error("Error level")
glog.Flush()
}
$ go run example.go -logtostderr=true -stderrthreshold=ERROR
I1214 15:46:00.743002 13429 example.go:10] Info level
E1214 15:46:00.743211 13429 example.go:11] Error level
在上面的示例中,我已将 stderrthreshold
标志设置为 ERROR,但我仍然收到 INFO 级别的日志。我只想要 ERROR 级别的日志。
默认情况下,glog 会写入
- 所有日志消息到日志文件(它们默认在
/tmp
中创建); - 将严重性为
stderrthreshold
或更高级别的消息记录到 stderr。
通过使用 -logtostderr=true
标志,此行为已更改:
Logs are written to standard error instead of to files.
- 没有日志消息写入日志文件;
- 所有日志消息都写入 stderr。
stderrthreshold
大概在使用 -logtostderr=true
时没有效果。在您的调用中它无论如何都没有效果,因为默认阈值已经是 ERROR
.
总而言之,仅 运行 go run example.go
不带任何命令行参数,只有严重程度为 ERROR
或更高级别的日志消息会根据需要写入 stderr。