【发布时间】:2019-07-05 23:12:57
【问题描述】:
有什么方法可以在集群 cassandra 中获取所有执行的查询?
感谢您的帮助
【问题讨论】:
有什么方法可以在集群 cassandra 中获取所有执行的查询?
感谢您的帮助
【问题讨论】:
在开源 Cassandra 中,只能在 4.0 版(尚未发布)中通过审核日志记录。看到这个blog post about it。
DataStax Enterprise 也提供此功能 - 您可以将其启用为 described in documentation。
【讨论】:
如果我没记错的话,您是在问批处理执行吗?您可以在 cqlsh 中使用“SOURCE”命令。请参考下面的链接。 https://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlshSource.html
【讨论】:
启用跟踪 - 在 Cassandra 配置中,或者您也可以从客户端覆盖它,
https://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlshTracing.html
【讨论】:
你不一定非得有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']'
【讨论】: