package utils import ( "fmt" "github.com/beego/beego/v2/server/web" "strconv" ) var ( RunMode string //运行模式 MYSQL_URL string //数据库连接 MYSQL_URL_ETA string MYSQL_WEEKLY_URL string //CRM主库 REDIS_CACHE string //缓存地址 //Rc *cache.Cache //redis缓存 Re error //redis错误 Rc RedisClient //redis缓存 ) // 日志配置 var ( LogPath string //调用过程中的日志存放地址 LogFile string BinLogPath string //数据库相关的日志存放地址 BinLogFile string ApiLogPath string //接口请求地址和接口返回值日志存放地址 ApiLogFile string LogMaxDays int //日志最大保留天数 ) // 系统配置 var ( DesKey string // 加密key EmailSendToUsers string // 邮件提醒人员 BusinessCode string // 商户号 ) // 公共api内部服务调用 var ( // EtaPubUrl 模板消息推送 EtaPubUrl string // EtaPubAuthorization 模板推送秘钥 EtaPubAuthorization string // AlarmMsgUrl 报警服务地址 AlarmMsgUrl string Report2ImgServerUrl string // 报告详情转图片服务地址 // ChartLibUrl 图库项目url ChartLibUrl string ) // 对象存储客户端 var ( ObjectStorageClient string // 目前有oss minio,默认oss ResourceProxyUrl string // 代理资源地址 ) // 阿里云配置 var ( Bucketname string Endpoint string Imghost string UploadDir string Upload_Audio_Dir string AccessKeyId string AccessKeySecret string ) // MinIo配置 var ( MinIoBucketname string MinIoEndpoint string MinIoImghost string MinIoUploadDir string MinIoUpload_Audio_Dir string MinIoAccessKeyId string MinIoAccessKeySecret string MinIoUseSSL string MinIoPort string MinIoRegion string ) // S3配置 var ( S3Endpoint string S3BucketName string S3UploadDir string S3AccessKeyId string S3AccessKeySecret string S3Host string S3Region string S3ForceStyle string S3EndpointPort string S3Protocol string S3DisableSSL string S3OpenAcl string ) func init() { tmpRunMode, err := web.AppConfig.String("run_mode") if err != nil { panic("配置文件读取run_mode错误 " + err.Error()) } RunMode = tmpRunMode if RunMode == "" { localIp, err := GetLocalIP() fmt.Println("localIp:", localIp) if localIp == "10.0.0.123" { RunMode = "debug" } else { RunMode = "release" } fmt.Println("RunMode:", RunMode) configPath := `/home/code/config/eta_report/conf/app.conf` fmt.Println("configPath:", configPath) err = web.LoadAppConfig("ini", configPath) if err != nil { fmt.Println("web.LoadAppConfig Err:" + err.Error()) } } config, err := web.AppConfig.GetSection(RunMode) if err != nil { panic("配置文件读取错误 " + err.Error()) } fmt.Println(RunMode + " 模式") MYSQL_URL = config["mysql_url"] MYSQL_URL_ETA = config["mysql_url_eta"] MYSQL_WEEKLY_URL = config["mysql_url_weekly"] REDIS_CACHE = config["beego_cache"] if len(REDIS_CACHE) <= 0 { panic(any("redis链接参数没有配置")) } //Rc, Re = cache.NewCache(REDIS_CACHE) //初始化缓存 //if Re != nil { // fmt.Println(Re) // panic(any(Re)) //} // 初始化缓存 redisClient, err := initRedis(config["redis_type"], config["beego_cache"]) if err != nil { fmt.Println("redis链接异常:", err) panic(any(Re)) } Rc = redisClient //日志配置 { LogPath = config["log_path"] LogFile = config["log_file"] BinLogPath = config["binlog_path"] BinLogFile = config["binlog_file"] ApiLogPath = config["apilog_path"] ApiLogFile = config["apilog_file"] logMaxDaysStr := config["log_max_day"] LogMaxDays, _ = strconv.Atoi(logMaxDaysStr) } // 系统配置 { // 接口返回加密KEY DesKey = config["des_key"] // 邮件提醒人员 EmailSendToUsers = config["email_send_to_users"] // 商户号 BusinessCode = config["business_code"] } // 系统内部服务地址 { // 发送微信模板消息地址 EtaPubUrl = config["eta_pub_url"] // 发送微信模板消息地址 EtaPubAuthorization = config["eta_pub_authorization"] // 报警服务地址 AlarmMsgUrl = config["alarm_msg_url"] // 报告详情转图片服务地址 Report2ImgServerUrl = config["report2img_server_url"] // 图表项目域名 ChartLibUrl = config["chart_lib_url"] } // 对象存储客户端 ObjectStorageClient = config["object_storage_client"] // 代理资源地址 ResourceProxyUrl = config["resource_proxy_url"] // OSS相关 { Endpoint = config["endpoint"] Bucketname = config["bucket_name"] Imghost = config["img_host"] UploadDir = config["upload_dir"] Upload_Audio_Dir = config["upload_audio_dir"] AccessKeyId = config["access_key_id"] AccessKeySecret = config["access_key_secret"] } // MinIo相关 { MinIoEndpoint = config["minio_endpoint"] MinIoBucketname = config["minio_bucket_name"] MinIoImghost = config["minio_img_host"] MinIoUploadDir = config["minio_upload_dir"] MinIoUpload_Audio_Dir = config["minio_upload_audio_dir"] MinIoAccessKeyId = config["minio_access_key_id"] MinIoAccessKeySecret = config["minio_access_key_secret"] MinIoUseSSL = config["minio_use_ssl"] MinIoPort = config["minio_port"] MinIoRegion = config["minio_region"] } // S3-OSS相关 { S3Endpoint = config["s3_endpoint"] S3BucketName = config["s3_bucket_name"] S3Host = config["s3_host"] S3AccessKeyId = config["s3_access_key_id"] S3AccessKeySecret = config["s3_access_key_secret"] S3UploadDir = config["s3_upload_dir"] S3Region = config["s3_region"] S3ForceStyle = config["s3_force_style"] S3EndpointPort = config["s3_endpoint_port"] S3Protocol = config["s3_protocol"] S3DisableSSL = config["s3_disable_ssl"] S3OpenAcl = config["s3_open_acl"] } }