如何扩展cassandra的指标

时间:2016-05-04 09:16:52

标签: cassandra

有一个多中心cassandra环境。 并设置consistency-level = local_quorum。 我想知道本地数据中心和其他数据中心的延迟。 我的意思是成功写入数据,以及其他数据中心可以拥有副本的时间。

cassandra未公开此指标。 发现在org.apache.cassandra.service.StorageProxy.mutate方法中收集了writelatency。

并希望在其中添加代码以实现收集数据中心的延迟。 但问题是cassandra写入完成时写入一致性级别的数量成功,我无法阻止写入事务。

如何保持同步 write memtablewrite merics

不知道如何继续下去。任何人都有实现这个目标的想法,请帮助一下。

1 个答案:

答案 0 :(得分:0)

目前没有任何可用的东西,但CASSANDRA-11569有一张补丁可用。

你可以尝试一些技巧。

  • 如果在查询(CL.ALL)上启用跟踪,则可以检查跟踪事件表,以查看突变离开协调器的时间以及何时到达副本的时间。
  • 您可以进行本地仲裁写入查询,然后是每个仲裁写入查询和跟踪差异。

跟踪突变中的某些指标存在问题。 Cassandra将通过单个代理写入(相对于实际发送到每个节点的协调器)来捎带该DC中的所有写入。如果该节点命中GC,则可能会出现峰值。在极端情况下,推测性重试将有助于影响延迟,但随后您无法真正跟踪原始交叉直流延迟。可能只想考虑“ping”。