解决日志api的message字段为空的问题
This commit is contained in:
@@ -2,8 +2,10 @@ package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"io"
|
||||
"log"
|
||||
"os"
|
||||
"time"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/monitor/backend/config"
|
||||
@@ -34,9 +36,17 @@ func isDefaultDBConfig(cfg *config.Config) bool {
|
||||
|
||||
// main 函数启动服务器
|
||||
func main() {
|
||||
// 配置日志:只输出必要的信息,禁用调试日志
|
||||
// 配置日志:同时输出到文件和标准输出
|
||||
logFileName := fmt.Sprintf("monitor-backend-%s.log", time.Now().Format("2006-01-02"))
|
||||
logFile, err := os.OpenFile(logFileName, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
|
||||
if err != nil {
|
||||
log.Printf("Warning: Failed to open log file %s, logging only to stdout: %v", logFileName, err)
|
||||
} else {
|
||||
defer logFile.Close()
|
||||
// 创建一个多输出写入器,同时写入文件和标准输出
|
||||
log.SetOutput(io.MultiWriter(os.Stdout, logFile))
|
||||
}
|
||||
log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
|
||||
log.SetOutput(os.Stdout)
|
||||
|
||||
// 加载配置
|
||||
cfg, err := config.LoadConfig()
|
||||
@@ -96,8 +106,9 @@ func main() {
|
||||
r := gin.New()
|
||||
// 添加必要的中间件
|
||||
r.Use(gin.Recovery())
|
||||
// 禁用Gin的默认日志
|
||||
r.Use(gin.LoggerWithWriter(gin.DefaultWriter, "/health"))
|
||||
// 设置Gin的日志输出到文件和标准输出
|
||||
ginLogger := log.New(io.MultiWriter(os.Stdout, logFile), "[GIN] ", log.Ldate|log.Ltime)
|
||||
r.Use(gin.LoggerWithWriter(ginLogger.Writer()))
|
||||
|
||||
// 设置CORS
|
||||
r.Use(func(c *gin.Context) {
|
||||
|
||||
Reference in New Issue
Block a user