config.go 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. package utils
  2. import (
  3. "fmt"
  4. beego "github.com/beego/beego/v2/adapter"
  5. "github.com/beego/beego/v2/server/web"
  6. )
  7. var (
  8. RunMode string //运行模式
  9. MYSQL_URL string //数据库连接
  10. )
  11. var SystemType string // 系统类型; hz:弘则;trial:试用平台;custom:客户
  12. var (
  13. APPNAME string //项目中文名称
  14. EmailSendToUsers string // 邮件提醒人员
  15. RefreshEdbInfoEmailSendToUsers string // 刷新完成通知邮件人员
  16. // AlarmMsgUrl 报警服务地址
  17. AlarmMsgUrl string
  18. )
  19. // 经济数据库
  20. var (
  21. EDB_LIB_URL string
  22. APP_EDB_LIB_NAME_EN string
  23. EDB_LIB_Md5_KEY string
  24. )
  25. // 公共数据服务接口参数
  26. var (
  27. APPID string
  28. SECRET string
  29. )
  30. func init() {
  31. tmpRunMode, err := web.AppConfig.String("run_mode")
  32. if err != nil {
  33. panic("配置文件读取run_mode错误 " + err.Error())
  34. }
  35. RunMode = tmpRunMode
  36. if RunMode == "" {
  37. localIp, err := GetLocalIP()
  38. fmt.Println("localIp:", localIp)
  39. if localIp == "10.0.0.123" {
  40. RunMode = "debug"
  41. } else {
  42. RunMode = "release"
  43. }
  44. //RunMode = "release"
  45. configPath := `/home/code/config/eta_task/conf/app.conf`
  46. err = web.LoadAppConfig("ini", configPath)
  47. if err != nil {
  48. fmt.Println("web.LoadAppConfig Err:" + err.Error())
  49. }
  50. }
  51. config, err := web.AppConfig.GetSection(RunMode)
  52. if err != nil {
  53. panic("配置文件读取错误 " + err.Error())
  54. }
  55. beego.Info(RunMode + " 模式")
  56. MYSQL_URL = config["mysql_url"]
  57. // 系统类型
  58. systemType, err := web.AppConfig.String("system_type")
  59. if err != nil {
  60. panic(any("配置文件读取system_type错误 " + err.Error()))
  61. }
  62. SystemType = systemType
  63. // 项目中文名称
  64. appNameCn, err := web.AppConfig.String("app_name_cn")
  65. if err != nil {
  66. panic(any("配置文件读取app_name_cn错误 " + err.Error()))
  67. }
  68. APPNAME = appNameCn
  69. // 邮件提醒人员
  70. EmailSendToUsers = config["email_send_to_users"]
  71. // 刷新完成通知邮件人员
  72. RefreshEdbInfoEmailSendToUsers = config["refresh_edb_info_email_send_to_users"]
  73. // 报警服务地址
  74. AlarmMsgUrl = config["alarm_msg_url"]
  75. // 公共指标库相关
  76. {
  77. EDB_LIB_URL = config["edb_lib_url"]
  78. APP_EDB_LIB_NAME_EN = config["app_edb_lib_name_en"]
  79. EDB_LIB_Md5_KEY = config["edb_lib_md5_key"]
  80. }
  81. APPID = config["appid"]
  82. SECRET = config["secret"]
  83. }