Merge branch 'refs/heads/feat-conf-redis'
This commit is contained in:
commit
fdc3674ff5
|
|
@ -477,7 +477,8 @@ func GetAllRedisInfo() ([]RedisInfo, error) {
|
||||||
}
|
}
|
||||||
var redisInfos []RedisInfo
|
var redisInfos []RedisInfo
|
||||||
for _, key := range keys {
|
for _, key := range keys {
|
||||||
val, err := RedisClient.Get(ctx, key).Result()
|
//先查看key类型,再根据类型获取value
|
||||||
|
val, err := getKeyTypeAndData(key)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("Error getting key: %v", err)
|
fmt.Println("Error getting key: %v", err)
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|
@ -496,3 +497,27 @@ func GetAllRedisInfo() ([]RedisInfo, error) {
|
||||||
}
|
}
|
||||||
return redisInfos, nil
|
return redisInfos, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getKeyTypeAndData(key string) (string, error) {
|
||||||
|
ctx := context.Background()
|
||||||
|
key_type := RedisClient.Type(ctx, key).Val()
|
||||||
|
var val interface{}
|
||||||
|
var err error
|
||||||
|
switch key_type {
|
||||||
|
case "string":
|
||||||
|
val, err = RedisClient.Get(ctx, key).Result()
|
||||||
|
case "hash":
|
||||||
|
val, err = RedisClient.HGetAll(ctx, key).Result()
|
||||||
|
case "list":
|
||||||
|
val, err = RedisClient.LRange(ctx, key, 0, -1).Result()
|
||||||
|
case "set":
|
||||||
|
val, err = RedisClient.SMembers(ctx, key).Result()
|
||||||
|
case "zset":
|
||||||
|
val, err = RedisClient.ZRange(ctx, key, 0, -1).Result()
|
||||||
|
case "bitmap":
|
||||||
|
val, err = RedisClient.GetBit(ctx, key, 0).Result()
|
||||||
|
default:
|
||||||
|
val = "unknown type"
|
||||||
|
}
|
||||||
|
return fmt.Sprintf("%v", val), err
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue