【发布时间】:2016-02-17 15:39:00
【问题描述】:
我们在小型开发环境(2 个 DC,每个 3 个节点)中使用 Cassandra 2.1.5。 我们在开发机器上没有太多空间,几乎每天都面临磁盘空间错误。罪魁祸首是 system_traces 键空间:
.../system_traces]# du -sh
8.1G .
我尝试在 cqlsh 中关闭跟踪:
cqlsh> tracing off;
Tracing is not enabled.
我尝试了 nodetool settraceprobability 0 - 但表格仍在填充。
我无法删除表和键空间:
cqlsh> drop keyspace system_traces;
Unauthorized: code=2100 [Unauthorized] message="Cannot DROP <keyspace system_traces>"
唯一可行的解决方案是“truncate system_traces.sessions; truncate system_traces.events;” - 但这些表很快就会满是行。
如何一劳永逸地禁用它?
【问题讨论】:
-
您仍然必须在某处启用跟踪。您检查过您的客户端应用程序吗?您使用哪种语言/驱动程序?
-
Java,阿喀琉斯。与在客户端代码中的跟踪无关。
-
尝试查看几行,这可能会提示您是什么生成了这些痕迹。例如,当我手动跟踪 CQL 查询时,查询字符串出现在
sessions.parameters中。 -
@Olivier Michallat 你是对的。原来,Achilles 为在 slf4j 中具有 TRACE 日志记录的实体启用了跟踪日志记录。因此,如果您在日志记录中将 your.company.package 设置为 TRACE,您将自动在 Achilles 中获得 CQL 跟踪。您能否将您的答案添加为答案,以便我将其标记为解决方案?
标签: cassandra