增加环境变量是否成功读取的检查,并在控制台中打印日志

This commit is contained in:
2026-01-10 01:58:46 +08:00
parent e761ff5be5
commit d952ddd4ea
3 changed files with 22 additions and 5 deletions

View File

@@ -32,8 +32,7 @@ import (
"github.com/gin-gonic/gin" "github.com/gin-gonic/gin"
"go.uber.org/zap" "go.uber.org/zap"
// _ "carrotskin/docs" // Swagger docs
_ "carrotskin/docs" // Swagger docs
) )
func main() { func main() {

View File

@@ -131,7 +131,11 @@ type SecurityConfig struct {
// Load 加载配置 - 完全从环境变量加载不依赖YAML文件 // Load 加载配置 - 完全从环境变量加载不依赖YAML文件
func Load() (*Config, error) { func Load() (*Config, error) {
// 加载.env文件如果存在 // 加载.env文件如果存在
_ = godotenv.Load(".env") if err := godotenv.Load(".env"); err != nil {
fmt.Printf("[Config] 注意: 未加载 .env 文件 (原因: %v)\n", err)
} else {
fmt.Println("[Config] 成功加载 .env 文件")
}
// 设置默认值 // 设置默认值
setDefaults() setDefaults()
@@ -152,6 +156,20 @@ func Load() (*Config, error) {
// 从环境变量中覆盖配置 // 从环境变量中覆盖配置
overrideFromEnv(&config) overrideFromEnv(&config)
// 打印关键配置加载状态
fmt.Println("==================================================")
fmt.Println(" CarrotSkin Configuration Check ")
fmt.Println("==================================================")
fmt.Printf("Server Port: %s\n", config.Server.Port)
fmt.Printf("Database Host: %s\n", config.Database.Host)
fmt.Printf("Redis Host: %s\n", config.Redis.Host)
fmt.Printf("Environment: %s\n", config.Environment)
if config.Database.Host == "localhost" && os.Getenv("DATABASE_HOST") != "" && os.Getenv("DATABASE_HOST") != "localhost" {
fmt.Printf("[Warning] Database Host is 'localhost' but env DATABASE_HOST is set to '%s'. Viper binding might have failed.\n", os.Getenv("DATABASE_HOST"))
}
fmt.Println("==================================================")
return &config, nil return &config, nil
} }

View File

@@ -1,9 +1,9 @@
package storage package storage
import ( import (
"context" // "context"
"testing" "testing"
"time" // "time"
"carrotskin/pkg/config" "carrotskin/pkg/config"