From 248b93ced777f15fdbf3c24543acebf02db0cdb4 Mon Sep 17 00:00:00 2001 From: Leufolium Date: Fri, 24 May 2024 02:52:23 +0800 Subject: [PATCH] by Robin at 20240524 --- app/mix/cmd_offline/main.go | 11 ++++---- app/mix/conf/cfg.go | 39 ++++++++++++++-------------- etc/mix/mix-test.yaml | 5 ++-- library/configcenter/configcenter.go | 6 ----- library/httpserver/httpserver.go | 28 -------------------- 5 files changed, 28 insertions(+), 61 deletions(-) diff --git a/app/mix/cmd_offline/main.go b/app/mix/cmd_offline/main.go index 362c6beb..932bc359 100644 --- a/app/mix/cmd_offline/main.go +++ b/app/mix/cmd_offline/main.go @@ -57,9 +57,7 @@ func main() { } // 初始化日志 - fmt.Printf("cfg.oflineserver: %v", cfg.OfflineServer) - fmt.Printf("cfg.oflineserver.log: %v", cfg.OfflineServer.Log) - logger.InitLogger(*cfg.OfflineServer.Log) + logger.InitLogger(*cfg.OfflineServerLog) // 初始化短信服务 err = sms.Init(cfg.Dysmsapi) @@ -113,10 +111,13 @@ func main() { validator.InitDefaultNotNullValidator() controller.InitOffline(router) srv := &http.Server{ - Addr: fmt.Sprintf("%s:%d", GetIp(), cfg.OfflineServer.App.Port), + Addr: fmt.Sprintf("%s:%d", GetIp(), cfg.OfflineServerApp.Port), Handler: router, } - httpserver.StartOfflineHttpServer(srv, cfg.OfflineServer) + httpserver.StartHttpServer(srv, &configcenter.DefaultConfig{ + Log: *cfg.OfflineServerLog, + App: *cfg.OfflineServerApp, + }) } func PrintAndExit(msg string) { diff --git a/app/mix/conf/cfg.go b/app/mix/conf/cfg.go index 43cbd31c..0ae12540 100644 --- a/app/mix/conf/cfg.go +++ b/app/mix/conf/cfg.go @@ -4,23 +4,24 @@ import "service/library/configcenter" type ConfigSt struct { *configcenter.DefaultConfig `yaml:",inline"` // default - MixMongo *configcenter.MongoConfig `json:"mix_mongo" yaml:"mix_mongo"` // mix mongo - MixMysql *configcenter.MysqlConfig `json:"mix_mysql" yaml:"mix_mysql"` // mix mysql - Crypto *configcenter.CryptoConfig `json:"crypto" yaml:"crypto"` // 账号相关加密 - Wxpay *configcenter.WxpayClientConfig `json:"wxpay" yaml:"wxpay"` // 微信支付 - WxpayTFZ *configcenter.WxpayClientConfig `json:"wxpay_tfz" yaml:"wxpay_tfz"` // 微信支付 - Alipay *configcenter.AlipayClientConfig `json:"alipay" yaml:"alipay"` // 支付宝 心意到了 - AlipayMYTS *configcenter.AlipayClientConfig `json:"alipay_myts" yaml:"alipay_myts"` // 支付宝 觅缘天使 - Apollo *configcenter.ApolloConfig `json:"apollo" yaml:"apollo"` // Apollo - Media *configcenter.MediaConfig `json:"media" yaml:"media"` // 媒体配置 - Dysmsapi *configcenter.DysmsapiConfig `json:"dysmsapi" yaml:"dysmsapi"` // 阿里云短信服务 - ImageAudit *configcenter.ImageAuditConfig `json:"imageaudit" yaml:"imageaudit"` // 图片内容审核服务 - RedisConfig *configcenter.RedisConfig `json:"redis" yaml:"redis"` // redis - ServerInfo *configcenter.ServerInfoConfig `json:"server_info" yaml:"server_info"` // 服务器信息 - TextAudit *configcenter.TextAuditConfig `json:"textaudit" yaml:"textaudit"` // 文字内容审核服务 - XxlJob *configcenter.XxlJobConfig `json:"xxl_job" yaml:"xxl_job"` // xxl-job作业系统 - DingTalkRobot *configcenter.DingTalkRobotConfig `json:"ding_talk_robot" yaml:"ding_talk_robot"` // 钉钉机器人 - VideoModeration *configcenter.VideoModerationConfig `json:"video_moderation" yaml:"video_moderation"` // 视频审核 - ElasticSearch *configcenter.ElasticSearchConfig `json:"elastic_search" yaml:"elastic_search"` // es - OfflineServer *configcenter.OfflineServerConfig `json:"offline_server" yaml:"offline_server"` // 离线任务 + MixMongo *configcenter.MongoConfig `json:"mix_mongo" yaml:"mix_mongo"` // mix mongo + MixMysql *configcenter.MysqlConfig `json:"mix_mysql" yaml:"mix_mysql"` // mix mysql + Crypto *configcenter.CryptoConfig `json:"crypto" yaml:"crypto"` // 账号相关加密 + Wxpay *configcenter.WxpayClientConfig `json:"wxpay" yaml:"wxpay"` // 微信支付 + WxpayTFZ *configcenter.WxpayClientConfig `json:"wxpay_tfz" yaml:"wxpay_tfz"` // 微信支付 + Alipay *configcenter.AlipayClientConfig `json:"alipay" yaml:"alipay"` // 支付宝 心意到了 + AlipayMYTS *configcenter.AlipayClientConfig `json:"alipay_myts" yaml:"alipay_myts"` // 支付宝 觅缘天使 + Apollo *configcenter.ApolloConfig `json:"apollo" yaml:"apollo"` // Apollo + Media *configcenter.MediaConfig `json:"media" yaml:"media"` // 媒体配置 + Dysmsapi *configcenter.DysmsapiConfig `json:"dysmsapi" yaml:"dysmsapi"` // 阿里云短信服务 + ImageAudit *configcenter.ImageAuditConfig `json:"imageaudit" yaml:"imageaudit"` // 图片内容审核服务 + RedisConfig *configcenter.RedisConfig `json:"redis" yaml:"redis"` // redis + ServerInfo *configcenter.ServerInfoConfig `json:"server_info" yaml:"server_info"` // 服务器信息 + TextAudit *configcenter.TextAuditConfig `json:"textaudit" yaml:"textaudit"` // 文字内容审核服务 + XxlJob *configcenter.XxlJobConfig `json:"xxl_job" yaml:"xxl_job"` // xxl-job作业系统 + DingTalkRobot *configcenter.DingTalkRobotConfig `json:"ding_talk_robot" yaml:"ding_talk_robot"` // 钉钉机器人 + VideoModeration *configcenter.VideoModerationConfig `json:"video_moderation" yaml:"video_moderation"` // 视频审核 + ElasticSearch *configcenter.ElasticSearchConfig `json:"elastic_search" yaml:"elastic_search"` // es + OfflineServerLog *configcenter.LoggerConfig `json:"offline_server_log" yaml:"offline_server_log"` // 离线任务log + OfflineServerApp *configcenter.AppConfig `json:"offline_server_app" yaml:"offline_server_app"` // 离线任务app } diff --git a/etc/mix/mix-test.yaml b/etc/mix/mix-test.yaml index 8bdca2cf..1f2527d9 100644 --- a/etc/mix/mix-test.yaml +++ b/etc/mix/mix-test.yaml @@ -145,15 +145,14 @@ elastic_search: password: "Wishpal@2024" sniff: false -offline_server: - log: +offline_server_log: stdout_enable: true stdout_level: "trace" file_enable: true file_level: "trace" file_abs_path: "/app/ironfan/log/offline-server/" - app: +offline_server_app: app_name: "offline-server" ip: "127.0.0.1" port: 9998 \ No newline at end of file diff --git a/library/configcenter/configcenter.go b/library/configcenter/configcenter.go index 2547d57d..ae463e08 100644 --- a/library/configcenter/configcenter.go +++ b/library/configcenter/configcenter.go @@ -173,12 +173,6 @@ type ElasticSearchConfig struct { Sniff bool `json:"sniff" yaml:"sniff"` // sniffer } -// 离线机器配置 -type OfflineServerConfig struct { - Log *LoggerConfig `json:"log" yaml:"log"` // 日志配置 - App *AppConfig `json:"app" yaml:"app"` // 服务配置 -} - func LoadConfig(configFilePath string, cfg interface{}) error { cfgStr, err := ioutil.ReadFile(configFilePath) if err != nil { diff --git a/library/httpserver/httpserver.go b/library/httpserver/httpserver.go index 15793530..ee0871bd 100644 --- a/library/httpserver/httpserver.go +++ b/library/httpserver/httpserver.go @@ -40,31 +40,3 @@ func StartHttpServer(srv *http.Server, cfg *configcenter.DefaultConfig) { logger.Info("Server exited") } - -func StartOfflineHttpServer(srv *http.Server, cfg *configcenter.OfflineServerConfig) { - go func() { - if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed { - logger.Fatal("listen: %v", err) - } - }() - - logger.Info("Server %s start at %s", cfg.App.AppName, srv.Addr) - - quit := make(chan os.Signal) - signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM) - <-quit - logger.Info("Shutdown Server ...") - - ctx, cancel := context.WithTimeout(context.Background(), 1*time.Second) - defer cancel() - if err := srv.Shutdown(ctx); err != nil { - logger.Fatal("Server Shutdown:", err) - } - - select { - case <-ctx.Done(): - logger.Info("timeout of 1 seconds.") - } - - logger.Info("Server exited") -}