3

есть ли простой способ включить ведение журнала запросов на cassandra через xml-конфигурацию? Я использую пространство имен:Cassandra query logging через конфигурацию пружины

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

, но я не могу найти подходящего решения. Я пытался включить отслеживание через cqlsh, но он не работает для моего приложения.

Я пытался также добавить строку:

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

Но также не работает.

Мои версии: весна-данных Кассандры 1.4.0 Кассандры: 2.1.5

ответ

3

Пожалуйста, проверьте эту link и проверить, если вы добавили регистратор запросов к вашему определению кластера, как говорится:

Cluster cluster = ... 
QueryLogger queryLogger = QueryLogger.builder(cluster) 
    .withConstantThreshold(...) 
    .withMaxQueryStringLength(...) 
.build(); 
cluster.register(queryLogger); 

Дайте мне знать, если это поможет.

+0

любое решение application.properties? – Mojtabye

1

QueryLogger Добавить @Bean и получить Cluster @Autowired в:

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

(+, очевидно, настроить QueryLogger.Builder по мере необходимости).

Не забудьте установить уровень журнала в DEBUG/TRACE в вашем application.yml:

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

вуаля!