SpringBoot Redis环境下如何显示发送的Redis命令?
springboot redis环境下输出发送的redis命令
在springboot整合mybatis环境时,我们可以借助配置项来显示发送的sql语句。然而,在集成redis环境时,如何显示后端发送给redis server的指令呢?
根据官方文档和相关议题讨论,当前spring-boot-starter-data-redis尚不支持相关配置。因此,有以下方法实现显示redis命令:
- 自定义实现:自行实现日志输出或命令监控机制。
- 使用redis自带的monitor命令:在redis客户端执行monitor命令,监控redis server接收到的命令。
- 采用redisson框架:redisson框架可以输出发送的redis命令。
配置redisson框架的日志等级为trace即可输出原始resp格式的命令。例如:
// RedisClientConfig配置 RedisClientConfig redisClientConfig = new RedisClientConfig(); redisClientConfig.setAddress("localhost", 6379); // 创建Redis客户端 RedisClient client = RedisClient.create(redisClientConfig); // 获取Redis连接 final RedisConnection conn = client.connect(); // 执行SET命令 final Object test = conn.sync(StringCodec.INSTANCE, RedisCommands.SET, "test", 0);
配置日志等级为trace后,即可在日志中看到原始的resp格式命令。