blog
blog copied to clipboard
posts/go/gin/2018-02-15-log/
log.go文件所有的logger.Println(v)应改为logger.Println(v...) 再就是log文件名一启动就固定了 改为文件名随着时间变化更好
关于日志的路径 LogSavePath = "runtime/logs/" 写在 app.ini 中是不是更好些呢,还有 file.go 中的 mkDir 创建日志目录的时候先判断下要创建的目录是否存在是不是更好呢
log 忘記 init 去拿到 logger 使用了
创建路径后,日志文件没有创建
2023/04/05 00:56:47 Fail to OpenFile: open runtime/logs/log20230405.log : The system cannot find the file specified. exit status 1
func openLogFile(filePath string) *os.File {
_, err := os.Stat(filePath)
switch {
case os.IsNotExist(err):
mkdir()
_ = os.WriteFile(filePath, []byte(""), os.ModePerm)
case os.IsPermission(err):
log.Fatalf("Permisson:%v", err)
}
handle, err := os.OpenFile(filePath, os.O_APPEND | os.O_WRONLY | os.O_WRONLY, 0644)
if err != nil {
log.Fatalf("Fail to OpenFile: %v", err)
}
return handle
}
func Info(format string, v ...interface{}) { setPrefix(INFO) message := fmt.Sprintf(format, v...) logger.Println(message) }