From 26524d20fb22f91e47dc557e74146a22ca923af1 Mon Sep 17 00:00:00 2001 From: 0xJacky Date: Sun, 7 May 2023 11:00:13 +0800 Subject: [PATCH] chore: move logger into internal --- main.go | 52 +++++++++----------- server/api/analytic.go | 2 +- server/api/api.go | 2 +- server/api/cert.go | 2 +- server/api/config.go | 2 +- server/api/domain.go | 2 +- server/api/nginx_log.go | 2 +- server/api/pty.go | 2 +- server/api/upgrade.go | 2 +- server/internal/analytic/analytic.go | 2 +- server/internal/analytic/record.go | 2 +- server/internal/cert/auto_cert.go | 2 +- server/internal/cert/cert.go | 2 +- server/internal/helper/hash.go | 2 +- {logger => server/internal/logger}/color.go | 0 {logger => server/internal/logger}/logger.go | 13 ++--- server/internal/nginx/nginx.go | 2 +- server/model/config_backup.go | 10 ++-- server/model/model.go | 2 +- server/router/middleware.go | 2 +- server/server.go | 3 +- server/service/template.go | 2 +- server/service/upgrade.go | 2 +- 23 files changed, 56 insertions(+), 58 deletions(-) rename {logger => server/internal/logger}/color.go (100%) rename {logger => server/internal/logger}/logger.go (91%) diff --git a/main.go b/main.go index 759341cd..a588d57d 100644 --- a/main.go +++ b/main.go @@ -1,40 +1,36 @@ package main import ( - "flag" - "fmt" - "github.com/0xJacky/Nginx-UI/logger" - "github.com/0xJacky/Nginx-UI/server" - "github.com/0xJacky/Nginx-UI/server/service" - "github.com/0xJacky/Nginx-UI/server/settings" - "github.com/gin-gonic/gin" - "github.com/jpillora/overseer" - "github.com/jpillora/overseer/fetcher" + "flag" + "fmt" + "github.com/0xJacky/Nginx-UI/server" + "github.com/0xJacky/Nginx-UI/server/service" + "github.com/0xJacky/Nginx-UI/server/settings" + "github.com/gin-gonic/gin" + "github.com/jpillora/overseer" + "github.com/jpillora/overseer/fetcher" + "log" ) func main() { - var confPath string - flag.StringVar(&confPath, "config", "app.ini", "Specify the configuration file") - flag.Parse() + var confPath string + flag.StringVar(&confPath, "config", "app.ini", "Specify the configuration file") + flag.Parse() - settings.Init(confPath) + settings.Init(confPath) - logger.Init(settings.ServerSettings.RunMode) + gin.SetMode(settings.ServerSettings.RunMode) - gin.SetMode(settings.ServerSettings.RunMode) + r, err := service.GetRuntimeInfo() - defer logger.Sync() + if err != nil { + log.Fatalln(err) + } - r, err := service.GetRuntimeInfo() - - if err != nil { - logger.Fatal(err) - } - - overseer.Run(overseer.Config{ - Program: server.Program, - Address: fmt.Sprintf(":%s", settings.ServerSettings.HttpPort), - Fetcher: &fetcher.File{Path: r.ExPath}, - TerminateTimeout: 0, - }) + overseer.Run(overseer.Config{ + Program: server.Program, + Address: fmt.Sprintf(":%s", settings.ServerSettings.HttpPort), + Fetcher: &fetcher.File{Path: r.ExPath}, + TerminateTimeout: 0, + }) } diff --git a/server/api/analytic.go b/server/api/analytic.go index 619941f1..5838566a 100644 --- a/server/api/analytic.go +++ b/server/api/analytic.go @@ -2,8 +2,8 @@ package api import ( "fmt" - "github.com/0xJacky/Nginx-UI/logger" "github.com/0xJacky/Nginx-UI/server/internal/analytic" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/pkg/errors" "github.com/shirou/gopsutil/v3/cpu" "github.com/shirou/gopsutil/v3/disk" diff --git a/server/api/api.go b/server/api/api.go index 98f8007d..62026616 100644 --- a/server/api/api.go +++ b/server/api/api.go @@ -1,7 +1,7 @@ package api import ( - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/gin-gonic/gin" val "github.com/go-playground/validator/v10" "net/http" diff --git a/server/api/cert.go b/server/api/cert.go index da7d92ea..fedc6d54 100644 --- a/server/api/cert.go +++ b/server/api/cert.go @@ -1,9 +1,9 @@ package api import ( - "github.com/0xJacky/Nginx-UI/logger" "github.com/0xJacky/Nginx-UI/server/internal/cert" "github.com/0xJacky/Nginx-UI/server/internal/cert/dns" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/internal/nginx" "github.com/0xJacky/Nginx-UI/server/model" "github.com/gin-gonic/gin" diff --git a/server/api/config.go b/server/api/config.go index 6ae522a0..2d294bc9 100644 --- a/server/api/config.go +++ b/server/api/config.go @@ -1,8 +1,8 @@ package api import ( - "github.com/0xJacky/Nginx-UI/logger" "github.com/0xJacky/Nginx-UI/server/internal/config_list" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/internal/nginx" "github.com/0xJacky/Nginx-UI/server/query" "github.com/gin-gonic/gin" diff --git a/server/api/domain.go b/server/api/domain.go index 82d1c91b..30e01198 100644 --- a/server/api/domain.go +++ b/server/api/domain.go @@ -1,10 +1,10 @@ package api import ( - "github.com/0xJacky/Nginx-UI/logger" "github.com/0xJacky/Nginx-UI/server/internal/cert" "github.com/0xJacky/Nginx-UI/server/internal/config_list" "github.com/0xJacky/Nginx-UI/server/internal/helper" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/internal/nginx" "github.com/0xJacky/Nginx-UI/server/model" "github.com/0xJacky/Nginx-UI/server/query" diff --git a/server/api/nginx_log.go b/server/api/nginx_log.go index b84808c0..53f04203 100644 --- a/server/api/nginx_log.go +++ b/server/api/nginx_log.go @@ -2,8 +2,8 @@ package api import ( "encoding/json" - "github.com/0xJacky/Nginx-UI/logger" "github.com/0xJacky/Nginx-UI/server/internal/helper" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/internal/nginx" "github.com/0xJacky/Nginx-UI/server/settings" "github.com/gin-gonic/gin" diff --git a/server/api/pty.go b/server/api/pty.go index f37dd917..9d1e3eea 100644 --- a/server/api/pty.go +++ b/server/api/pty.go @@ -1,7 +1,7 @@ package api import ( - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/internal/pty" "github.com/gin-gonic/gin" "github.com/gorilla/websocket" diff --git a/server/api/upgrade.go b/server/api/upgrade.go index 312dda6f..d016bd7f 100644 --- a/server/api/upgrade.go +++ b/server/api/upgrade.go @@ -1,7 +1,7 @@ package api import ( - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/service" "github.com/gin-gonic/gin" "github.com/gorilla/websocket" diff --git a/server/internal/analytic/analytic.go b/server/internal/analytic/analytic.go index 269bb61c..f44cf75a 100644 --- a/server/internal/analytic/analytic.go +++ b/server/internal/analytic/analytic.go @@ -1,7 +1,7 @@ package analytic import ( - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/shirou/gopsutil/v3/net" "time" ) diff --git a/server/internal/analytic/record.go b/server/internal/analytic/record.go index 8123dc47..6b11384b 100644 --- a/server/internal/analytic/record.go +++ b/server/internal/analytic/record.go @@ -1,7 +1,7 @@ package analytic import ( - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/shirou/gopsutil/v3/cpu" "github.com/shirou/gopsutil/v3/disk" "github.com/shirou/gopsutil/v3/net" diff --git a/server/internal/cert/auto_cert.go b/server/internal/cert/auto_cert.go index 27446d83..3e228ff6 100644 --- a/server/internal/cert/auto_cert.go +++ b/server/internal/cert/auto_cert.go @@ -2,7 +2,7 @@ package cert import ( "fmt" - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/model" "github.com/pkg/errors" "time" diff --git a/server/internal/cert/cert.go b/server/internal/cert/cert.go index 05013307..344fc676 100644 --- a/server/internal/cert/cert.go +++ b/server/internal/cert/cert.go @@ -6,8 +6,8 @@ import ( "crypto/elliptic" "crypto/rand" "crypto/tls" - "github.com/0xJacky/Nginx-UI/logger" "github.com/0xJacky/Nginx-UI/server/internal/cert/dns" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/internal/nginx" "github.com/0xJacky/Nginx-UI/server/query" "github.com/0xJacky/Nginx-UI/server/settings" diff --git a/server/internal/helper/hash.go b/server/internal/helper/hash.go index 1326ff98..86359664 100644 --- a/server/internal/helper/hash.go +++ b/server/internal/helper/hash.go @@ -3,7 +3,7 @@ package helper import ( "crypto/sha512" "fmt" - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "io" "os" ) diff --git a/logger/color.go b/server/internal/logger/color.go similarity index 100% rename from logger/color.go rename to server/internal/logger/color.go diff --git a/logger/logger.go b/server/internal/logger/logger.go similarity index 91% rename from logger/logger.go rename to server/internal/logger/logger.go index 922947ce..90b18639 100644 --- a/logger/logger.go +++ b/server/internal/logger/logger.go @@ -1,21 +1,22 @@ package logger import ( - "github.com/gin-gonic/gin" - "go.uber.org/zap" - "go.uber.org/zap/zapcore" - "os" + "github.com/0xJacky/Nginx-UI/server/settings" + "github.com/gin-gonic/gin" + "go.uber.org/zap" + "go.uber.org/zap/zapcore" + "os" ) var logger *zap.SugaredLogger -func Init(runMode string) { +func init() { // First, define our level-handling logic. highPriority := zap.LevelEnablerFunc(func(lvl zapcore.Level) bool { return lvl >= zapcore.ErrorLevel }) lowPriority := zap.LevelEnablerFunc(func(lvl zapcore.Level) bool { - switch runMode { + switch settings.ServerSettings.RunMode { case gin.ReleaseMode: return lvl >= zapcore.InfoLevel && lvl < zapcore.ErrorLevel default: diff --git a/server/internal/nginx/nginx.go b/server/internal/nginx/nginx.go index 61cdd400..3afebec3 100644 --- a/server/internal/nginx/nginx.go +++ b/server/internal/nginx/nginx.go @@ -1,7 +1,7 @@ package nginx import ( - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/settings" "os/exec" "path/filepath" diff --git a/server/model/config_backup.go b/server/model/config_backup.go index f0103f6c..ea85c419 100644 --- a/server/model/config_backup.go +++ b/server/model/config_backup.go @@ -1,9 +1,9 @@ package model import ( - "github.com/0xJacky/Nginx-UI/logger" - "os" - "path/filepath" + "github.com/0xJacky/Nginx-UI/server/internal/logger" + "os" + "path/filepath" ) type ConfigBackup struct { @@ -38,12 +38,12 @@ func GetBackup(id int) (config ConfigBackup) { func CreateBackup(path string) { content, err := os.ReadFile(path) if err != nil { - logger.Error(err) + logger.Error(err) } config := ConfigBackup{Name: filepath.Base(path), FilePath: path, Content: string(content)} result := db.Create(&config) if result.Error != nil { - logger.Error(result.Error) + logger.Error(result.Error) } } diff --git a/server/model/model.go b/server/model/model.go index 9706ec6b..2223f8f2 100644 --- a/server/model/model.go +++ b/server/model/model.go @@ -2,7 +2,7 @@ package model import ( "fmt" - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/settings" "github.com/gin-gonic/gin" "github.com/spf13/cast" diff --git a/server/router/middleware.go b/server/router/middleware.go index b0683ecb..f70bd4f1 100644 --- a/server/router/middleware.go +++ b/server/router/middleware.go @@ -3,7 +3,7 @@ package router import ( "encoding/base64" "github.com/0xJacky/Nginx-UI/frontend" - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/model" "github.com/0xJacky/Nginx-UI/server/settings" "github.com/gin-contrib/static" diff --git a/server/server.go b/server/server.go index 02282e7e..3c27e9ae 100644 --- a/server/server.go +++ b/server/server.go @@ -1,9 +1,9 @@ package server import ( - "github.com/0xJacky/Nginx-UI/logger" "github.com/0xJacky/Nginx-UI/server/internal/analytic" "github.com/0xJacky/Nginx-UI/server/internal/cert" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/internal/nginx" "github.com/0xJacky/Nginx-UI/server/model" "github.com/0xJacky/Nginx-UI/server/query" @@ -18,6 +18,7 @@ import ( ) func Program(state overseer.State) { + defer logger.Sync() // Hack: fix wrong Content Type of .js file on some OS platforms // See https://github.com/golang/go/issues/32350 _ = mime.AddExtensionType(".js", "text/javascript; charset=utf-8") diff --git a/server/service/template.go b/server/service/template.go index 243d8ec4..6f567ad5 100644 --- a/server/service/template.go +++ b/server/service/template.go @@ -3,7 +3,7 @@ package service import ( "bufio" "bytes" - "github.com/0xJacky/Nginx-UI/logger" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/internal/nginx" "github.com/0xJacky/Nginx-UI/server/settings" templ "github.com/0xJacky/Nginx-UI/template" diff --git a/server/service/upgrade.go b/server/service/upgrade.go index bfd09f7d..1e3f115c 100644 --- a/server/service/upgrade.go +++ b/server/service/upgrade.go @@ -5,8 +5,8 @@ import ( "fmt" _github "github.com/0xJacky/Nginx-UI/.github" "github.com/0xJacky/Nginx-UI/frontend" - "github.com/0xJacky/Nginx-UI/logger" "github.com/0xJacky/Nginx-UI/server/internal/helper" + "github.com/0xJacky/Nginx-UI/server/internal/logger" "github.com/0xJacky/Nginx-UI/server/settings" "github.com/pkg/errors" "io"