From 00fee24a858fac7ca0898514b54cc39cee9e35b5 Mon Sep 17 00:00:00 2001
From: "meilin.huang" <954537473@qq.com>
Date: Tue, 7 Feb 2023 16:54:44 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BB=A3=E7=A0=81=E5=B0=8F=E8=B0=83?=
=?UTF-8?q?=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/views/ops/component/TagMenu.vue | 106 ++++++
mayfly_go_web/src/views/ops/db/SqlExec.vue | 9 +-
.../views/ops/db/component/InstanceTree.vue | 311 ++++++++----------
.../src/views/ops/mongo/MongoInstanceTree.vue | 267 ++++++---------
.../src/views/ops/redis/DataOperation.vue | 204 ++++++------
.../src/views/ops/redis/RedisInstanceTree.vue | 195 ++++-------
server/internal/redis/api/redis.go | 26 +-
server/internal/redis/api/vo/redis.go | 2 -
8 files changed, 528 insertions(+), 592 deletions(-)
create mode 100644 mayfly_go_web/src/views/ops/component/TagMenu.vue
diff --git a/mayfly_go_web/src/views/ops/component/TagMenu.vue b/mayfly_go_web/src/views/ops/component/TagMenu.vue
new file mode 100644
index 00000000..b4a2d332
--- /dev/null
+++ b/mayfly_go_web/src/views/ops/component/TagMenu.vue
@@ -0,0 +1,106 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ tag.tagPath }}
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mayfly_go_web/src/views/ops/db/SqlExec.vue b/mayfly_go_web/src/views/ops/db/SqlExec.vue
index 93e7c424..bf564773 100644
--- a/mayfly_go_web/src/views/ops/db/SqlExec.vue
+++ b/mayfly_go_web/src/views/ops/db/SqlExec.vue
@@ -219,7 +219,8 @@
layout="prev, pager, next, total, jumper" v-model:current-page="dt.pageNum"
:page-size="defalutLimit">
-
{{ dt.sql }}
+ {{ dt.sql }}
+
@@ -258,7 +259,7 @@
\ No newline at end of file
diff --git a/server/internal/redis/api/redis.go b/server/internal/redis/api/redis.go
index 1d64f1b4..d9180391 100644
--- a/server/internal/redis/api/redis.go
+++ b/server/internal/redis/api/redis.go
@@ -76,36 +76,42 @@ func (r *Redis) RedisInfo(rc *req.Ctx) {
g := rc.GinCtx
ri := r.RedisApp.GetRedisInstance(uint64(ginx.PathParamInt(g, "id")), 0)
- var res string
- var err error
-
+ section := rc.GinCtx.Query("section")
mode := ri.Info.Mode
ctx := context.Background()
+ var redisCli *redis.Client
+
if mode == "" || mode == entity.RedisModeStandalone || mode == entity.RedisModeSentinel {
- res, err = ri.Cli.Info(ctx).Result()
+ redisCli = ri.Cli
} else if mode == entity.RedisModeCluster {
host := rc.GinCtx.Query("host")
biz.NotEmpty(host, "集群模式host信息不能为空")
clusterClient := ri.ClusterCli
- var redisClient *redis.Client
// 遍历集群的master节点找到该redis client
clusterClient.ForEachMaster(ctx, func(ctx context.Context, client *redis.Client) error {
if host == client.Options().Addr {
- redisClient = client
+ redisCli = client
}
return nil
})
- if redisClient == nil {
+ if redisCli == nil {
// 遍历集群的slave节点找到该redis client
clusterClient.ForEachSlave(ctx, func(ctx context.Context, client *redis.Client) error {
if host == client.Options().Addr {
- redisClient = client
+ redisCli = client
}
return nil
})
}
- biz.NotNil(redisClient, "该实例不在该集群中")
- res, err = redisClient.Info(ctx).Result()
+ biz.NotNil(redisCli, "该实例不在该集群中")
+ }
+
+ var res string
+ var err error
+ if section == "" {
+ res, err = ri.Cli.Info(ctx).Result()
+ } else {
+ res, err = ri.Cli.Info(ctx, section).Result()
}
biz.ErrIsNilAppendErr(err, "获取redis info失败: %s")
diff --git a/server/internal/redis/api/vo/redis.go b/server/internal/redis/api/vo/redis.go
index c1fd8ad2..43fe96fa 100644
--- a/server/internal/redis/api/vo/redis.go
+++ b/server/internal/redis/api/vo/redis.go
@@ -7,8 +7,6 @@ type Redis struct {
Name *string `json:"name"`
Host *string `json:"host"`
Db string `json:"db"`
- ProjectId *int64 `json:"projectId"`
- Project *string `json:"project"`
Mode *string `json:"mode"`
EnableSshTunnel *int8 `json:"enableSshTunnel"` // 是否启用ssh隧道
SshTunnelMachineId *uint64 `json:"sshTunnelMachineId"` // ssh隧道机器id