golang通用后台管理系统09(系统操作日志记录)
1.日志工具类
package log
/****
日志记录
wangwei
2024-11-18 15:30
*/
import (
"log"
"os"
"path/filepath"
"time"
)
// 获取以当前日期命名的日志文件路径
func getLogFilePath() string {
currentDate := time.Now().Format("2006-01-02")
logDir := "/home/logs/" // 这里替换为你实际想要的系统指定目录路径
logFileName := currentDate + ".log"
return filepath.Join(logDir, logFileName)
}
// 初始化日志记录器
func InitLogger() *log.Logger {
logFilePath := getLogFilePath()
// 创建日志文件所在目录(如果不存在)
logDir := filepath.Dir(logFilePath)
err := os.MkdirAll(logDir, os.ModePerm)
if err!= nil {
log.Fatalf("创建日志文件目录失败:%v", err)
}
// 打开日志文件,以追加模式写入
logFile, err := os.OpenFile(logFilePath, os.O_CREATE|os.O_APPEND|os.O_WRONLY, os.ModePerm)
if err!= nil {
log.Fatalf("打开日志文件失败:%v", err)
}
return log.New(logFile, "", log.LstdFlags)
}
2.使用
//日志记录
logger := commonLog.InitLogger()
// 记录一些示例操作日志
logger.Println("这是一条操作日志:用户登录系统")
logger.Println("这是一条操作日志:执行了某个任务")
3.测试