主要項目に絞ってつくったつもり。ご自由にお使いください。
成果物
細かい解説はしないが、用意したグラフ名を以下に列挙。名前からお察しください。
- Cassandra: compaction tasks
- Cassandra: GC count
- Cassandra: heap memory usage
- Cassandra: memory pool usage
- Cassandra: non-heap memory usage
- Cassandra: number of clients
- Cassandra: number of nodes
- Cassandra: number of unsuccessful requests
- Cassandra: read latency
- Cassandra: throughput
- Cassandra: write latency
参考にしたもの・利用したもの
JMX 経由で取得できる項目を 公式サイト で調べて、Zabbix に登録する前に Command-line JMX Client を利用して本当に値が取得できるか確かめた。
シュッと値が欲しいときに Command-line JMX Client は便利。
ややこしかったこと
TotalLatency と Latency。
$ java -jar cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.metrics:type=ClientRequest,scope=Write,name=TotalLatency Count
11/18/2017 11:10:53 +0000 org.archive.jmx.Client Count: 25386616763
^ これは書き込みレイテンシの合計。単位はマイクロ秒。
$ java -jar cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.metrics:type=ClientRequest,scope=Write,name=Latency Count
11/18/2017 11:17:56 +0000 org.archive.jmx.Client Count: 105136578
^ これは捌いた書き込みリクエスト数の合計。スループットが欲しいときはこいつから計算する。
これはどっちがどっちかわかんなくなる人が多いのでは。。?上記は Write に関してだが、当然 Read でも同様。もう少し直感的にわかりやすい命名にできなかったのだろうか。
やり残し
Table Metrics を discovery 使っていい感じに取得したい。