Commit a7067ea6fd872e114640acb8ef949700436394b1

Authored by luowenfeng
1 parent 797be107

feature(Redis监控): 添加缓存列表

yudao-module-infra/yudao-module-infra-biz/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/redis/RedisController.java
@@ -43,7 +43,7 @@ public class RedisController { @@ -43,7 +43,7 @@ public class RedisController {
43 } 43 }
44 44
45 @GetMapping("/get-key-list") 45 @GetMapping("/get-key-list")
46 - @ApiOperation("获得 Redis Key 列表") 46 + @ApiOperation("获得 Redis Key 模板列表")
47 @PreAuthorize("@ss.hasPermission('infra:redis:get-key-list')") 47 @PreAuthorize("@ss.hasPermission('infra:redis:get-key-list')")
48 public CommonResult<List<RedisKeyRespVO>> getKeyList() { 48 public CommonResult<List<RedisKeyRespVO>> getKeyList() {
49 List<RedisKeyDefine> keyDefines = RedisKeyRegistry.list(); 49 List<RedisKeyDefine> keyDefines = RedisKeyRegistry.list();
@@ -51,37 +51,40 @@ public class RedisController { @@ -51,37 +51,40 @@ public class RedisController {
51 } 51 }
52 52
53 @GetMapping("/get-key/{keyDefine}") 53 @GetMapping("/get-key/{keyDefine}")
54 - @ApiOperation("获得 Redis Key")  
55 -// @PreAuthorize("@ss.hasPermission('infra:redis:get-key-list')") 54 + @ApiOperation("获得 Redis keys 键名列表")
  55 + @PreAuthorize("@ss.hasPermission('infra:redis:get-key-define')")
56 public CommonResult<Set<String>> getKeyDefineKeys(@PathVariable("keyDefine") String keyDefine) { 56 public CommonResult<Set<String>> getKeyDefineKeys(@PathVariable("keyDefine") String keyDefine) {
57 Set<String> Keys = stringRedisTemplate.keys(keyDefine + "*"); 57 Set<String> Keys = stringRedisTemplate.keys(keyDefine + "*");
58 return success(Keys); 58 return success(Keys);
59 } 59 }
60 60
61 @DeleteMapping("/clear-key/{keyDefine}") 61 @DeleteMapping("/clear-key/{keyDefine}")
62 - @ApiOperation("获得 Redis Key")  
63 -// @PreAuthorize("@ss.hasPermission('infra:redis:get-key-list')") 62 + @ApiOperation("删除 Redis Key 根据模板")
  63 + @PreAuthorize("@ss.hasPermission('infra:redis:clear-key-define')")
64 public CommonResult<Boolean> clearKeyDefineKeys(@PathVariable("keyDefine") String keyDefine) { 64 public CommonResult<Boolean> clearKeyDefineKeys(@PathVariable("keyDefine") String keyDefine) {
65 stringRedisTemplate.delete(Objects.requireNonNull(stringRedisTemplate.keys(keyDefine + "*"))); 65 stringRedisTemplate.delete(Objects.requireNonNull(stringRedisTemplate.keys(keyDefine + "*")));
66 return success(Boolean.TRUE); 66 return success(Boolean.TRUE);
67 } 67 }
68 68
69 -// @PreAuthorize("@ss.hasPermi('monitor:cache:list')")  
70 - @GetMapping("/get-key/{cacheName}/{cacheKey}")  
71 - public CommonResult<RedisValuesRespVO> getKeyValue(@PathVariable("cacheName") String cacheName, @PathVariable("cacheKey") String cacheKey) { 69 + @GetMapping("/get-key/{keyDefine}/{cacheKey}")
  70 + @ApiOperation("获得 Redis key 内容")
  71 + @PreAuthorize("@ss.hasPermission('infra:redis:get-key-value')")
  72 + public CommonResult<RedisValuesRespVO> getKeyValue(@PathVariable("keyDefine") String keyDefine, @PathVariable("cacheKey") String cacheKey) {
72 String cacheValue = stringRedisTemplate.opsForValue().get(cacheKey); 73 String cacheValue = stringRedisTemplate.opsForValue().get(cacheKey);
73 - return success(new RedisValuesRespVO(cacheName, cacheKey, cacheValue)); 74 + return success(new RedisValuesRespVO(keyDefine, cacheKey, cacheValue));
74 } 75 }
75 76
76 -// @PreAuthorize("@ss.hasPermi('monitor:cache:list')")  
77 - @DeleteMapping("/clearCacheKey/{cacheKey}") 77 + @DeleteMapping("/clear-key/{cacheKey}")
  78 + @ApiOperation("删除 Redis Key 根据key")
  79 + @PreAuthorize("@ss.hasPermission('infra:redis:clear-key-value')")
78 public CommonResult<Boolean> clearCacheKey(@PathVariable String cacheKey) { 80 public CommonResult<Boolean> clearCacheKey(@PathVariable String cacheKey) {
79 stringRedisTemplate.delete(cacheKey); 81 stringRedisTemplate.delete(cacheKey);
80 return success(Boolean.TRUE); 82 return success(Boolean.TRUE);
81 } 83 }
82 84
83 -// @PreAuthorize("@ss.hasPermi('monitor:cache:list')")  
84 - @DeleteMapping("/clearCacheAll") 85 + @DeleteMapping("/clear-cache-all")
  86 + @ApiOperation(value="删除 所有缓存", notes="不使用该接口")
  87 + @PreAuthorize("@ss.hasPermission('infra:redis:clear-cache-all')")
85 public CommonResult<Boolean> clearCacheAll() { 88 public CommonResult<Boolean> clearCacheAll() {
86 Collection<String> cacheKeys = stringRedisTemplate.keys("*"); 89 Collection<String> cacheKeys = stringRedisTemplate.keys("*");
87 stringRedisTemplate.delete(cacheKeys); 90 stringRedisTemplate.delete(cacheKeys);
yudao-ui-admin/src/api/infra/redis.js
@@ -35,7 +35,7 @@ export function getKeyValue(keyDefine, key) { @@ -35,7 +35,7 @@ export function getKeyValue(keyDefine, key) {
35 // 根据键名删除缓存 35 // 根据键名删除缓存
36 export function clearCacheKey(key) { 36 export function clearCacheKey(key) {
37 return request({ 37 return request({
38 - url: '/infra/redis/clearCacheKey/' + key, 38 + url: '/infra/redis/clear-key/' + key,
39 method: 'delete' 39 method: 'delete'
40 }) 40 })
41 } 41 }
yudao-ui-admin/src/views/infra/redis/index.vue
@@ -93,7 +93,7 @@ @@ -93,7 +93,7 @@
93 <el-dialog 93 <el-dialog
94 :title="keyTemplate + '模块'" 94 :title="keyTemplate + '模块'"
95 :visible.sync="open" 95 :visible.sync="open"
96 - width="50vw" 96 + width="60vw"
97 append-to-body 97 append-to-body
98 > 98 >
99 <el-row :gutter="10"> 99 <el-row :gutter="10">