Golang中glog日志未写入指定log/dir目录问题求助
解决glog日志无法写入指定目录的问题
修正logtostderr参数:你当前将
logtostderr设为"true",这会强制所有日志输出到stderr,完全跳过文件写入逻辑。要让日志写入指定目录,必须将该参数设为"false":flag.Set("logtostderr", "false")确保日志目录存在:glog不会自动创建不存在的目录,所以必须提前递归创建目标目录,避免因目录不存在导致日志写入失败:
func init() { myDir, err := os.Getwd() if err != nil { panic(err) } logDir := myDir + "/log/dir" // 递归创建目录,权限设置为0755(可根据需求调整) if err := os.MkdirAll(logDir, 0755); err != nil { panic(err) } flag.Set("logtostderr", "false") flag.Set("log_dir", logDir) // 若需要输出INFO级别日志,需开启对应verbose级别 flag.Set("v", "1") flag.Parse() // 其他初始化操作 }检查日志级别:glog默认仅将WARNING及以上级别的日志写入文件。如果你的日志是INFO级别,需要通过
v参数开启对应级别(v=1对应INFO级,数值越大日志越详细)。
内容的提问来源于stack exchange,提问作者needhelp
相关产品推荐
相关产品推荐

