获取在Cassandra集群中执行的查询的列表

时间:2019-02-12 10:23:16

标签: cassandra datastax cqlsh

有什么方法可以在集群cassandra中获取所有执行的查询?

感谢您的帮助

4 个答案:

答案 0 :(得分:0)

如果我没记错,您是在问批处理吗?您可以在cqlsh中使用“ SOURCE”命令。请参考以下链接。 https://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlshSource.html

答案 1 :(得分:0)

启用跟踪-在Cassandra配置中,也可以从客户端开始进行跟踪,

https://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlshTracing.html

答案 2 :(得分:0)

在开源Cassandra中,只能通过审计日志记录在4.0版(尚未发布)中使用。参见此blog post about it

DataStax Enterprise也提供此功能-您可以将其启用为described in documentation

答案 3 :(得分:0)

您不一定非要拥有Cassandra 4.0,还可以查看爱立信的ecaudit插件

https://github.com/Ericsson/ecaudit

设置说明

https://github.com/Ericsson/ecaudit/blob/release/c3.0.11/doc/setup.md

示例输出

2019-02-28 15:18:14.089-> client=127.0.0.1, user=cassandra, status=ATTEMPT, operation='SELECT * FROM students'
2019-02-28 15:18:14.090-> client=127.0.0.1, user=cassandra, status=ATTEMPT, batch-id=6f3cae9b-f1f1-4a4c-baa2-ed168ee79f9d, operation='INSERT INTO ecks.ectbl (partk, clustk, value) VALUES (?, ?, ?)[1, '1', 'valid']'
2019-02-28 15:18:14.091-> client=127.0.0.1, user=cassandra, status=ATTEMPT, batch-id=6f3cae9b-f1f1-4a4c-baa2-ed168ee79f9d, operation='INSERT INTO ecks.ectbl (partk, clustk, value) VALUES (?, ?, ?)[2, '2', 'valid']'