From 652570087fc4c8b5766c6a4e792aafde61dac883 Mon Sep 17 00:00:00 2001 From: Wangjunqi123 Date: Thu, 4 Jul 2024 09:58:58 +0800 Subject: [PATCH] app/src/server: Determine whether the Redis server is enabled for TLS --- src/app/server/config/config.go | 1 + src/app/server/service/plugin/plugin.go | 2 +- src/config_server.yaml.templete | 1 + src/dbmanager/redismanager/redismanager.go | 28 +++++++++++++++------- 4 files changed, 23 insertions(+), 9 deletions(-) diff --git a/src/app/server/config/config.go b/src/app/server/config/config.go index 5b598ace..9d70f2f3 100644 --- a/src/app/server/config/config.go +++ b/src/app/server/config/config.go @@ -49,6 +49,7 @@ type MysqlDBInfo struct { type RedisDBInfo struct { RedisConn string `yaml:"redis_conn"` + UseTLS bool `yaml:"use_tls"` RedisPwd string `yaml:"redis_pwd"` DefaultDB int `yaml:"defaultDB"` DialTimeout time.Duration `yaml:"dialTimeout"` diff --git a/src/app/server/service/plugin/plugin.go b/src/app/server/service/plugin/plugin.go index d3888e4d..1944459d 100644 --- a/src/app/server/service/plugin/plugin.go +++ b/src/app/server/service/plugin/plugin.go @@ -475,7 +475,7 @@ func GetPlugins() ([]*Plugin, error) { for _, p := range plugins { plugin_status, err := GetPluginConnectStatus(p.Url) if err != nil { - logger.Error("plugin status get failed %s", err) + logger.Error("plugin status get failed %s, %s", err, p.Url) continue } p.ConnectStatus = plugin_status.Connected diff --git a/src/config_server.yaml.templete b/src/config_server.yaml.templete index b7510952..0ffe8464 100644 --- a/src/config_server.yaml.templete +++ b/src/config_server.yaml.templete @@ -25,6 +25,7 @@ mysql: data_base: PilotGo redis: redis_conn: localhost:6379 + use_tls: false redis_pwd: '' defaultDB: 0 dialTimeout: 5s #redis连接超时时间.默认5s diff --git a/src/dbmanager/redismanager/redismanager.go b/src/dbmanager/redismanager/redismanager.go index 582a9943..523497c7 100644 --- a/src/dbmanager/redismanager/redismanager.go +++ b/src/dbmanager/redismanager/redismanager.go @@ -19,6 +19,7 @@ import ( "crypto/tls" "time" + "gitee.com/openeuler/PilotGo/app/server/config" "github.com/go-redis/redis/v8" ) @@ -30,14 +31,25 @@ var ( ) func RedisInit(redisConn, redisPwd string, defaultDB int, dialTimeout time.Duration, enableRedis bool) error { - global_redis = redis.NewClient(&redis.Options{ - Addr: redisConn, - Password: redisPwd, - DB: defaultDB, - TLSConfig: &tls.Config{ - InsecureSkipVerify: true, - }, - }) + var cfg *redis.Options + if config.Config().RedisDBinfo.UseTLS { + cfg = &redis.Options{ + Addr: redisConn, + Password: redisPwd, + DB: defaultDB, + TLSConfig: &tls.Config{ + InsecureSkipVerify: true, + }, + } + } else { + cfg = &redis.Options{ + Addr: redisConn, + Password: redisPwd, + DB: defaultDB, + } + } + + global_redis = redis.NewClient(cfg) // 使用超时上下文,验证redis timeoutCtx, cancelFunc := context.WithTimeout(context.Background(), dialTimeout) defer cancelFunc() -- Gitee