java - 通过 spring 配置的 Cassandra 查询日志记录

标签 java spring cassandra cassandra-2.1 spring-data-cassandra

有什么简单的方法可以通过xml配置在cassandra上打开查询日志记录吗?我正在使用命名空间:

xmlns:cassandra="http://www.springframework.org/schema/data/cassandra"

但我找不到任何合适的解决方案。我试图通过 cqlsh 打开跟踪,但它对我的应用不起作用。

我也在尝试添加行:

<logger name="com.datastax.driver.core.QueryLogger.NORMAL" level="TRACE" />

但也不行。

我的版本: Spring 数据 Cassandra -1.4.0 Cassandra :2.1.5

最佳答案

添加一个 QueryLogger @Bean 并获取 Cluster @Autowired in:

@Bean
public QueryLogger queryLogger(Cluster cluster) {
    QueryLogger queryLogger = QueryLogger.builder()
            .build();
    cluster.register(queryLogger);
    return queryLogger;
}

(+ 显然根据需要配置 QueryLogger.Builder)。

不要忘记在 application.yml 中将日志级别设置为 DEBUG/TRACE:

logging.level.com.datastax.driver.core.QueryLogger.NORMAL: DEBUG
logging.level.com.datastax.driver.core.QueryLogger.SLOW: TRACE

瞧!

关于java - 通过 spring 配置的 Cassandra 查询日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41220442/

相关文章:

java - 使 java 方法仅对特定类可见

java - 如何在 Spring Security 中替换 UsernamePasswordAuthenticationFilter

java - 在 postgresql (spring) 中设置默认模式

java - Spring 拦截不起作用

cassandra - 过滤条件不适用于 ScyllaDB 中的计数器列,而它在 Cassandra 3.0 中起作用

java - 使用gradle构建Android应用程序时如何删除特定权限?

java - Activity 重新开放只工作一次

Java 泛型和转换为原始类型

java - 如何将 java.lang.ClassCastException : cannot assign instance of scala. collection.immutable.List 修复为字段类型 scala.collection.Seq?

nosql - 多维 map 中的 map 维度究竟是什么?