Cassandra Stackdriver代理未收集监控数据(KeyCache的命中率)
我正在配置GCE虚拟机中的Stackdriver代理来监视Cassandra指标。 根据GCP指南: 我使用了上面链接的默认设置,它们工作正常。 但是,我添加的一个度量标准不适用于以下错误 我尝试了类型和值的仪表或计数器,或者属性的计数。然而,它们中的任何一个都不能很好地工作 有什么建议吗 错误 2月19日23:14:08 PGXXXXXXXX1 collectd[16917]:写入\u gcm:服务器响应CollectdTimeseriesRequest包含错误: { payloadErrors:[ { 索引:161, 值错误:[ { 错误:{ 代码:3,, 消息:不支持的集合id:插件:\cassandra\type:\gauge\type\u实例:\cache\u key\u cache-hitrate\ } } ] } ] } Config在指南的原始配置中添加了KeyCache命中率指标 连接部分:Cassandra Stackdriver代理未收集监控数据(KeyCache的命中率),cassandra,collectd,google-cloud-stackdriver,Cassandra,Collectd,Google Cloud Stackdriver,我正在配置GCE虚拟机中的Stackdriver代理来监视Cassandra指标。 根据GCP指南: 我使用了上面链接的默认设置,它们工作正常。 但是,我添加的一个度量标准不适用于以下错误 我尝试了类型和值的仪表或计数器,或者属性的计数。然而,它们中的任何一个都不能很好地工作 有什么建议吗 错误 2月19日23:14:08 PGXXXXXXXX1 collectd[16917]:写入\u gcm:服务器响应CollectdTimeseriesRequest包含错误: { payloadError
<Connection>
# When using non-standard Cassandra configurations, replace the below with
#ServiceURL "service:jmx:rmi:///jndi/rmi://CASSANDRA_HOST:CASSANDRA_PORT/jmxrmi"
ServiceURL "service:jmx:rmi:///jndi/rmi://localhost:7199/jmxrmi"
InstancePrefix "cassandra"
User "cassandra"
Password "xxxxxxxx"
Collect "cassandra_storageservice-load"
Collect "cassandra_Cache_KeyCache-Hits"
Collect "cassandra_Cache_KeyCache-HitRate" <===== Added line
...
Collect "cassandra_DroppedMessage_MUTATION-Dropped"
Collect "cassandra_DroppedMessage_READ-Dropped"
MBean部分:
<MBean "cassandra_Cache_KeyCache-HitRate">
ObjectName "org.apache.cassandra.metrics:type=Cache,scope=KeyCache,name=HitRate"
<Value>
Type "gauge"
InstancePrefix "cache_key_cache-hitrate"
Table false
Attribute "Value"
</Value>
</MBean>
我的环境
stackdriver代理5.5.2-379.sdl.stretch
cassandra 3.11.1遵循自定义指标指南,我可以解决我的问题 创建自定义指标 请按照以下指南操作: 从自定义度量名称到调用create方法。Timeseries不是必需的 还需要获得访问监控的授权。遵循IAM指南 配置cassandra plugin.conf文件 指南如下: 从顶部开始,直到加载新配置 矿井样本代码 创建自定义度量的代码 客户端请求读取延迟-1minrate.py 从google.cloud导入监控 client=monitoring.client 描述符=client.metric\u描述符 'custom.googleapis.com/cassandra/client_request/latency/1minrate', metric_kind=监控.MetricKind.GAUGE, value_type=monitoring.ValueType.DOUBLE, labels=[monitoring.label.LabelDescriptoroperation,description=存储操作名称。], description='Cassandra读取1分钟的延迟率', 显示\u name='Read latency 1 minutes rate' descriptor.create cassandra插件示例 在同一配置文件中遵循2-1和2-2 2-1. cassandra插件示例第1部分 在 2-2。cassandra插件示例第2部分
<Chain "GenericJMX_cassandra_custom">
<Rule "rewrite_genericjmx_to_cassandra_custom">
<Match regex>
Plugin "^GenericJMX$"
PluginInstance "^cassandra_custom.*$"
</Match>
<Target "set">
MetaData "stackdriver_metric_type" "custom.googleapis.com/cassandra/client_request/latency/1minrate"
MetaData "label:operation" "%{plugin_instance}"
</Target>
<Target "replace">
MetaData "label:operation" "cassandra_custom_" ""
</Target>
</Rule>
<Rule "go_back">
Target "return"
</Rule>
</Chain>
<Chain "PreCache">
<Rule "jump_to_GenericJMX_cassandra_custom">
<Target "jump">
Chain "GenericJMX_cassandra_custom"
</Target>
</Rule>
</Chain>
PreCacheChain "PreCache"
堆垛机监控手册的官方指南不易阅读和理解。
我希望这会有所帮助。使用sjk Swiss Java Knife tool,我得到了以下结果,在我看来,属性应该是Value。$java-jar sjk-0.9.2.jar mx-s localhost:7199-b org.apache.cassandra.metrics:name=HitRate,scope=KeyCache,type=Cache-mi org.apache.cassandra.metrics:type=Cache,scope=KeyCache,name=HitRate org.apache.cassandra.metrics.CassandraMetricsRegistry$JmxGauge-MBean管理界面上的信息A Value:java.lang.Object-为管理公开的属性O objectName:javax.management.objectName-为管理公开的操作目前似乎不支持许多指标。我尝试了其他指标,但也失败了,出现了相同的错误。应该尝试其他解决方案,如datadog或prometheus。。。裁判
<Chain "GenericJMX_cassandra_custom">
<Rule "rewrite_genericjmx_to_cassandra_custom">
<Match regex>
Plugin "^GenericJMX$"
PluginInstance "^cassandra_custom.*$"
</Match>
<Target "set">
MetaData "stackdriver_metric_type" "custom.googleapis.com/cassandra/client_request/latency/1minrate"
MetaData "label:operation" "%{plugin_instance}"
</Target>
<Target "replace">
MetaData "label:operation" "cassandra_custom_" ""
</Target>
</Rule>
<Rule "go_back">
Target "return"
</Rule>
</Chain>
<Chain "PreCache">
<Rule "jump_to_GenericJMX_cassandra_custom">
<Target "jump">
Chain "GenericJMX_cassandra_custom"
</Target>
</Rule>
</Chain>
PreCacheChain "PreCache"