Jmx监控:可以收集和可视化保存在Cassandra上的Jmx / Mbeans数据吗?

时间:2016-09-22 22:19:09

标签: cassandra jmx metrics grafana

我设法从Java应用程序中收集JMX MetricsData并将其保存在Cassandra数据库中(我的项目负责人说这样做)。

我知道可以直接从JMX-端点使用JmxTrans进行收集,并在Grafana / Graphite内对其进行可视化。

我的问题是:我可以从cassandra收集JMX指标数据并在Grafana中将其可视化吗?

3 个答案:

答案 0 :(得分:3)

Grafana需要其他东西(例如graphite,Influxdb,cyanite)来存储数据。所以回答你的问题(我认为你至少要问)如果grafana可以从JMX本身提取指标,那就是“不”。

那就是说你可以让收藏变得更轻松,更快捷。 JMX不是一种非常有效的媒介。相反,让Cassandra使用石墨记者将指标直接发送到您的石墨(或任何报告者)实例。有关详细信息,请参阅http://www.datastax.com/dev/blog/pluggable-metrics-reporting-in-cassandra-2-0-2。博客文章中的步骤如下:

  1. 抓住您最喜欢的记者jar(例如metrics-graphite)并将其添加到服务器的lib
  2. 为示例后的记者创建配置文件。 将-Dcassandra.metricsReporterConfigFile=yourCoolFile.yaml添加到JVM_OPTS
  3. 中的cassandra-env.sh,启动服务器graphite: - period: 60 timeunit: 'SECONDS' hosts: - host: 'graphite-server.domain.local' port: 2003 predicate: color: "white" useQualifiedName: true patterns: - "^org.apache.cassandra.metrics.Cache.+" - "^org.apache.cassandra.metrics.ClientRequest.+" - "^org.apache.cassandra.metrics.Storage.+" - "^org.apache.cassandra.metrics.ThreadPools.+"

    示例配置:

    {{1}}

答案 1 :(得分:1)

这个问题已经过时了,但如果你现在这样做,我建议使用Prometheus作为Grafana的数据源以及它在Cassandra上的JmxExporter代理。

答案 2 :(得分:0)

您似乎希望使用Cassandra作为您从其他服务收集的JMX指标的数据存储; Grafana还没有这种支持(列出了可用的数据存储here