Cassandra 的指标监控本机 API
Cassandra's Metrics Monitoring native API
我想在我的 Java 程序中捕获我的 Cassandra 集群的 Dropwizard 指标(我不想使用 JMX)并将 JSON 中的这些值传递给其他服务器(这将使用这些值来生成警报等)。我是 Java 的新人,如果能得到一些指导,我将不胜感激。是否有用于收集这些指标的原生 Dropwizard API?例如,您能否提供使用 API 获取任何指标的示例 Java 代码?不使用 JMX 的原因是我读过 here 不建议尝试从生产环境收集指标,因为 JMX 的 RPC API 很脆弱。
您可以使用 Metrics 库的可用插件发送指标,例如 Graphite 或 Ganglia...
为此,需要将相应插件的.jar
文件放入Cassandra的lib
目录下,添加相应的插件配置文件,修改Cassandra的jvm.options
文件如下:
-Dcassandra.metricsReporterConfigFile=<reporting-configuration>.yaml
并重新启动 Cassandra 以获取更改。
有几篇博客 post 关于配置 Cassandra 以使用自定义指标插件可以提供更多详细信息:1, 2。
您也可以尝试设置标准 Metrics Servlets 进行查询 - 它应该以几乎相同的方式配置 - 添加库并提供配置
我想在我的 Java 程序中捕获我的 Cassandra 集群的 Dropwizard 指标(我不想使用 JMX)并将 JSON 中的这些值传递给其他服务器(这将使用这些值来生成警报等)。我是 Java 的新人,如果能得到一些指导,我将不胜感激。是否有用于收集这些指标的原生 Dropwizard API?例如,您能否提供使用 API 获取任何指标的示例 Java 代码?不使用 JMX 的原因是我读过 here 不建议尝试从生产环境收集指标,因为 JMX 的 RPC API 很脆弱。
您可以使用 Metrics 库的可用插件发送指标,例如 Graphite 或 Ganglia...
为此,需要将相应插件的.jar
文件放入Cassandra的lib
目录下,添加相应的插件配置文件,修改Cassandra的jvm.options
文件如下:
-Dcassandra.metricsReporterConfigFile=<reporting-configuration>.yaml
并重新启动 Cassandra 以获取更改。
有几篇博客 post 关于配置 Cassandra 以使用自定义指标插件可以提供更多详细信息:1, 2。
您也可以尝试设置标准 Metrics Servlets 进行查询 - 它应该以几乎相同的方式配置 - 添加库并提供配置