Compare commits
3 Commits
8775d3bf19
...
fcc7f92c18
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fcc7f92c18 | ||
|
|
a0ec97be8d | ||
|
|
c88cec6038 |
@@ -35,6 +35,9 @@ services:
|
||||
DB_PASSWORD: ${DB_PASSWORD}
|
||||
DB_NAME: ${DB_NAME}
|
||||
TZ: ${TZ}
|
||||
volumes:
|
||||
# 挂载添加日志目录挂载,将容器内日志日志目录映射到宿主机的 ./logs 目录
|
||||
- ./logs:/app/logs # 假设代码中日志存储路径为 /app/logs
|
||||
networks:
|
||||
user-network:
|
||||
driver: bridge
|
||||
|
||||
@@ -4,6 +4,7 @@ import (
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"os"
|
||||
"time"
|
||||
|
||||
_ "github.com/lib/pq"
|
||||
"go.uber.org/zap"
|
||||
@@ -21,10 +22,10 @@ func Init() {
|
||||
dbName := os.Getenv("DB_NAME")
|
||||
zap.L().Info(
|
||||
"💡 读取数据库配置",
|
||||
zap.String("host", dbHost), // key: "host", value: dbHost(string类型)
|
||||
zap.String("port", dbPort), // key: "port", value: dbPort(string类型)
|
||||
zap.String("user", dbUser), // key: "user", value: dbUser(string类型)
|
||||
zap.String("dbname", dbName), // key: "dbname", value: dbName(string类型)
|
||||
zap.String("host", dbHost),
|
||||
zap.String("port", dbPort),
|
||||
zap.String("user", dbUser),
|
||||
zap.String("dbname", dbName),
|
||||
)
|
||||
|
||||
// 构建数据库连接字符串
|
||||
@@ -38,12 +39,16 @@ func Init() {
|
||||
if err != nil {
|
||||
zap.L().Panic("❌ 无法连接数据库", zap.Error(err))
|
||||
}
|
||||
defer DB.Close()
|
||||
zap.L().Info("✅ 数据库连接对象创建成功")
|
||||
|
||||
// 设置连接池参数
|
||||
DB.SetMaxOpenConns(100) // 最大打开连接数
|
||||
DB.SetMaxIdleConns(20) // 最大空闲连接数
|
||||
DB.SetConnMaxLifetime(time.Hour) // 连接最大存活时间
|
||||
|
||||
// 验证数据库连接
|
||||
if err := DB.Ping(); err != nil {
|
||||
zap.L().Panic("❌ 数据库连接失败", zap.Error(err))
|
||||
}
|
||||
|
||||
zap.L().Info("✅ 数据库连接验证成功")
|
||||
}
|
||||
@@ -25,7 +25,7 @@ func Init() {
|
||||
|
||||
// 日志轮转配置(lumberjack)
|
||||
hook := lumberjack.Logger{
|
||||
Filename: viper.GetString("logger.path") + "app.log", // 日志文件路径
|
||||
Filename: viper.GetString("logger.path") + "logs/app.log", // 日志文件路径
|
||||
MaxSize: viper.GetInt("logger.max_size"), // 单个文件最大大小(MB)
|
||||
MaxBackups: viper.GetInt("logger.max_backup"), // 最大备份数
|
||||
MaxAge: viper.GetInt("logger.max_age"), // 最大保留天数
|
||||
|
||||
@@ -15,6 +15,7 @@ func main() {
|
||||
zap.L().Info("🚀 用户服务初始化")
|
||||
zap.L().Info("⌛️ 数据库初始化开始")
|
||||
db.Init()
|
||||
defer db.DB.Close() // 应用退出时关闭连接
|
||||
zap.L().Info("✅ 数据库初始化成功")
|
||||
|
||||
gin.SetMode(gin.ReleaseMode)
|
||||
|
||||
Reference in New Issue
Block a user