main.go 814 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package main
  2. import (
  3. "dbview/service"
  4. "log"
  5. "os"
  6. "path/filepath"
  7. "github.com/spf13/pflag"
  8. )
  9. func main() {
  10. // 解析命令行标志(在入口统一解析)
  11. pflag.Parse()
  12. // 获取配置路径
  13. configPath := getConfigPath()
  14. // 初始化应用
  15. app, err := service.InitBootstrap(configPath)
  16. if err != nil {
  17. log.Fatalf("应用初始化失败: %v", err)
  18. }
  19. // 记录启动信息
  20. app.Logger.Info("DB View 应用启动成功")
  21. // 运行应用
  22. if err := app.Run(); err != nil {
  23. log.Fatalf("应用运行失败: %v", err)
  24. }
  25. }
  26. // getConfigPath 获取配置文件路径
  27. func getConfigPath() string {
  28. // 首先尝试从环境变量获取
  29. if configPath := os.Getenv("DBVIEW_CONFIG"); configPath != "" {
  30. return configPath
  31. }
  32. // 默认配置文件路径
  33. return filepath.Join("config.toml")
  34. }