我正在寻找从我的Java Springboot Microservice(查询和响应)记录redis活动的最简单方法。
每当从/插入/插入/插入redis时,我想(在主Springboot日志文件中)日志线。
我的代码使用典型的spingframework数据redis方法这样:
import org.springframework.data.redis.core.RedisHash;
import org.springframework.data.redis.core.TimeToLive;
@RedisHash
public class InternalAddress {
private String county;
private String postcode;
@TimeToLive
private Long expiry;
}
*
import org.springframework.data.repository.CrudRepository;
public interface AddressRepository extends CrudRepository<InternalAddress, String> {}
我试图启用这样的记录。
logging:
level:
root: INFO
redis.clients: TRACE
org.springframework.data: TRACE
,但是我得到的对我来说是完全没有用的:一无所有,或者只是有关打开或关闭的连接的一些信息...
我想在日志中看到的是这样:
2017-11-28T16:05:18.140+00:00 HGETALL key5645 => {...returned data...}
2017-11-28T16:05:25.140+00:00 LPUSH whatever
2017-11-28T16:05:25.140+00:00 HMSET blahblahblah
有什么想法吗?我是否想念正确的课程?
我需要写一些自定义的拦截器/侦听器/AOP代码吗?
还有其他方法吗?预先感谢
现在没有可用的日志记录。您可以自己实施一些东西,但是您需要使用AOP来增加连接工厂,这可能有点工作。我提交了一张票以解决您的问题。
您是否尝试过使用redis的MONITOR
命令?
在application.yml/properties文件中仅包括以下内容,您可以看到一些相关的日志
logging:
level:
org.springframework.data.*.*: trace
org.springframework.cache.*: trace