修复客户端断联未释放端口问题
This commit is contained in:
9
server/pkg/env/env.go
vendored
9
server/pkg/env/env.go
vendored
@@ -2,11 +2,8 @@ package env
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"log/slog"
|
||||
"os"
|
||||
"strconv"
|
||||
|
||||
"github.com/joho/godotenv"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -24,12 +21,6 @@ var (
|
||||
|
||||
func Init() {
|
||||
|
||||
// 加载 .env 文件
|
||||
err := godotenv.Load()
|
||||
if err != nil {
|
||||
slog.Debug("没有本地环境变量文件")
|
||||
}
|
||||
|
||||
// AppCtrlPort
|
||||
appCtrlPortStr := os.Getenv("APP_CTRL_PORT")
|
||||
if appCtrlPortStr == "" {
|
||||
|
||||
41
server/pkg/log/logs.go
Normal file
41
server/pkg/log/logs.go
Normal file
@@ -0,0 +1,41 @@
|
||||
package log
|
||||
|
||||
import (
|
||||
"log/slog"
|
||||
"os"
|
||||
"time"
|
||||
|
||||
"github.com/lmittmann/tint"
|
||||
"github.com/mattn/go-colorable"
|
||||
)
|
||||
|
||||
func Init() {
|
||||
mode := os.Getenv("APP_LOG_MODE")
|
||||
if mode == "" {
|
||||
mode = "dev"
|
||||
}
|
||||
|
||||
switch mode {
|
||||
case "dev":
|
||||
writer := colorable.NewColorable(os.Stdout)
|
||||
logger := slog.New(tint.NewHandler(writer, &tint.Options{
|
||||
Level: slog.LevelDebug,
|
||||
TimeFormat: time.RFC3339,
|
||||
ReplaceAttr: func(_ []string, attr slog.Attr) slog.Attr {
|
||||
err, ok := attr.Value.Any().(error)
|
||||
if ok {
|
||||
return tint.Err(err)
|
||||
}
|
||||
return attr
|
||||
},
|
||||
}))
|
||||
slog.SetDefault(logger)
|
||||
case "test":
|
||||
logger := slog.New(slog.NewJSONHandler(os.Stdout, &slog.HandlerOptions{
|
||||
Level: slog.LevelInfo,
|
||||
}))
|
||||
slog.SetDefault(logger)
|
||||
default:
|
||||
panic("日志模式错误")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user