You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Cord MacLeod <co...@gmail.com> on 2012/05/12 05:41:42 UTC

zabbix templates

I've seen some Cacti templates for Cassandra and a JMX bridge called zap cat, but has anyone created Zabbix templates for Cassandra?

Re: zabbix templates

Posted by Cord MacLeod <co...@gmail.com>.
Outstanding.  Extremely helpful, thank you.


On May 14, 2012, at 5:05 AM, Viktor Jevdokimov wrote:

> This is, for example, Zabbix agent config for Linux based Cassandra, just find cmdline-jmxclient-0.10.3.jar. Not all items are there, add any you need, if missed. Start from JMX to understand, what parameters to use with keys, for example,
> cassandra.db.Caches[KEYSPACE,CACHE_NAME,COUNTER]
> 
> 
> ### CASSANDRA USER-DEFINED MONITORED PARAMETERS
> UserParameter=cassandra.db.Caches[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=Caches,keyspace=$1,cache=$2 $3 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.db.ColumnFamilies[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=ColumnFamilies,keyspace=$1,columnfamily=$2 $3 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.db.CompactionManager[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=CompactionManager $1 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.db.StorageProxy[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=StorageProxy $1 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.db.StorageService[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=StorageService $1 2>&1 | awk '{split($$6,a,"E");if(a[2]!=""){split(a[1],c,".");b=c[1]c[2];for(i=1;i<=a[2]-length(c[2]);i++)b=b"0";} else b=a[1];print b;}'
> UserParameter=cassandra.memory.Heap[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=Memory HeapMemoryUsage 2>&1 | awk '/$1/ {print $$2;}'
> UserParameter=cassandra.memory.NonHeap[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=Memory NonHeapMemoryUsage 2>&1 | awk '/$1/ {print $$2;}'
> UserParameter=cassandra.request.MutationStage[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.request:type=MutationStage $1 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.request.ReadRepairStage[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.request:type=ReadRepairStage $1 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.request.ReadStage[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.request:type=ReadStage $1 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.request.RequestResponseStage[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.request:type=MutationStage $1 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.runtime[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=Runtime $1 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.threading[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=Threading $1 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.os[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=OperatingSystem $1 2>&1 | awk '{print $$6;}'
> UserParameter=cassandra.gc.parnew[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=GarbageCollector,name=ParNew LastGcInfo 2>&1 | awk '/$1/ {print $$2;}'
> UserParameter=cassandra.gc.cms[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=GarbageCollector,name=ConcurrentMarkSweep LastGcInfo 2>&1 | awk '/$1/ {print $$2;}'
> UserParameter=cassandra.db.DynamicSnitchScores[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=DynamicEndpointSnitch,instance=* Scores 2>&1 | awk '{split($$0,a," ");for(i in a){if(match(a[i],/$1/)!=0){split(a[i],b,"=");sub(/,|}/,"",b[2]);print b[2];break;}}}'
> 
> 
> 
> Best regards / Pagarbiai
> 
> Viktor Jevdokimov
> Senior Developer
> 
> Email: Viktor.Jevdokimov@adform.com
> Phone: +370 5 212 3063
> Fax: +370 5 261 0453
> 
> J. Jasinskio 16C,
> LT-01112 Vilnius,
> Lithuania
> 
> 
> 
> Disclaimer: The information contained in this message and attachments is intended solely for the attention and use of the named addressee and may be confidential. If you are not the intended recipient, you are reminded that the information remains the property of the sender. You must not use, disclose, distribute, copy, print or rely on this e-mail. If you have received this message in error, please contact the sender immediately and irrevocably delete this message and any copies.-----Original Message-----
> From: Cord MacLeod [mailto:cordmacleod@gmail.com]
> Sent: Saturday, May 12, 2012 06:42
> To: user@cassandra.apache.org
> Subject: zabbix templates
> 
> I've seen some Cacti templates for Cassandra and a JMX bridge called zap cat, but has anyone created Zabbix templates for Cassandra?
> <cassandra.conf>


RE: zabbix templates

Posted by Viktor Jevdokimov <Vi...@adform.com>.
This is, for example, Zabbix agent config for Linux based Cassandra, just find cmdline-jmxclient-0.10.3.jar. Not all items are there, add any you need, if missed. Start from JMX to understand, what parameters to use with keys, for example,
cassandra.db.Caches[KEYSPACE,CACHE_NAME,COUNTER]


### CASSANDRA USER-DEFINED MONITORED PARAMETERS
UserParameter=cassandra.db.Caches[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=Caches,keyspace=$1,cache=$2 $3 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.db.ColumnFamilies[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=ColumnFamilies,keyspace=$1,columnfamily=$2 $3 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.db.CompactionManager[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=CompactionManager $1 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.db.StorageProxy[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=StorageProxy $1 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.db.StorageService[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=StorageService $1 2>&1 | awk '{split($$6,a,"E");if(a[2]!=""){split(a[1],c,".");b=c[1]c[2];for(i=1;i<=a[2]-length(c[2]);i++)b=b"0";} else b=a[1];print b;}'
UserParameter=cassandra.memory.Heap[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=Memory HeapMemoryUsage 2>&1 | awk '/$1/ {print $$2;}'
UserParameter=cassandra.memory.NonHeap[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=Memory NonHeapMemoryUsage 2>&1 | awk '/$1/ {print $$2;}'
UserParameter=cassandra.request.MutationStage[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.request:type=MutationStage $1 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.request.ReadRepairStage[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.request:type=ReadRepairStage $1 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.request.ReadStage[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.request:type=ReadStage $1 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.request.RequestResponseStage[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.request:type=MutationStage $1 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.runtime[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=Runtime $1 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.threading[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=Threading $1 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.os[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=OperatingSystem $1 2>&1 | awk '{print $$6;}'
UserParameter=cassandra.gc.parnew[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=GarbageCollector,name=ParNew LastGcInfo 2>&1 | awk '/$1/ {print $$2;}'
UserParameter=cassandra.gc.cms[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 java.lang:type=GarbageCollector,name=ConcurrentMarkSweep LastGcInfo 2>&1 | awk '/$1/ {print $$2;}'
UserParameter=cassandra.db.DynamicSnitchScores[*],java -jar /etc/zabbix/cmdline-jmxclient-0.10.3.jar - 127.0.0.1:7199 org.apache.cassandra.db:type=DynamicEndpointSnitch,instance=* Scores 2>&1 | awk '{split($$0,a," ");for(i in a){if(match(a[i],/$1/)!=0){split(a[i],b,"=");sub(/,|}/,"",b[2]);print b[2];break;}}}'



Best regards / Pagarbiai

Viktor Jevdokimov
Senior Developer

Email: Viktor.Jevdokimov@adform.com
Phone: +370 5 212 3063
Fax: +370 5 261 0453

J. Jasinskio 16C,
LT-01112 Vilnius,
Lithuania



Disclaimer: The information contained in this message and attachments is intended solely for the attention and use of the named addressee and may be confidential. If you are not the intended recipient, you are reminded that the information remains the property of the sender. You must not use, disclose, distribute, copy, print or rely on this e-mail. If you have received this message in error, please contact the sender immediately and irrevocably delete this message and any copies.-----Original Message-----
From: Cord MacLeod [mailto:cordmacleod@gmail.com]
Sent: Saturday, May 12, 2012 06:42
To: user@cassandra.apache.org
Subject: zabbix templates

I've seen some Cacti templates for Cassandra and a JMX bridge called zap cat, but has anyone created Zabbix templates for Cassandra?