首页 > 其他分享 >klog在日志文件中error级别日志重复打印2次

klog在日志文件中error级别日志重复打印2次

时间:2024-05-02 10:12:41浏览次数:26  
标签:log flag v2 error 日志 klog

问题现象

package main

import (
	"flag"

	"gopkg.in/natefinch/lumberjack.v2"
	"k8s.io/klog/v2"
)

func main() {
	klog.InitFlags(nil)
	flag.Set("logtostderr", "false")
	flag.Parse()
	l := &lumberjack.Logger{
		Filename:   "test.log",
		MaxSize:    1,
		MaxBackups: 3,
		MaxAge:     28,
		Compress:   true,
	}
	klog.SetOutput(l)
	defer klog.Flush()

	klog.Errorf("error")
}

在日志文件中,klog error级别日志重复打印2次。

问题分析

go/pkg/mod/k8s.io/klog/[email protected]/klog.go
output方法
如果指定了log_file,那么只输出1次;否则,error级别日志输出3次。

解决问题

flag.Set("log_file", "test.log")

指定日志文件,只输出一次。

标签:log,flag,v2,error,日志,klog
From: https://www.cnblogs.com/WJQ2017/p/18169972

相关文章