WHERE DO I START?
You are here:Integrations > Cassandra
  • Top ↑

Cassandra

Summary

Cassandra is an open source distributed database management system. We use the Jolokia agent to monitor Cassandra's performance as Cassandra exposes its metrics via JMX. Jolokia connects to a given mbean server and then exposes the server via a REST-like interface, acting as a bridge between JMX and HTTP/JSON.

Important   Netuitive supports all versions of Cassandra, but minor issues could be present in versions we haven't tested specifically. In particular, the Netuitive Agent version 5.1 has been tested against Cassandra versions 2.0.17 and 2.1.15. There's a known issue with the 5.1 agent against Cassandra 3.0.10.

Configuration

Important   If you haven't installed the Linux agent already, see the instructions on this page for how to install it. If you need to disable the Linux integration or view the unique API key assigned to your account, navigate to the Integrations page under the user account drop-down menu and click the integration designated as Infrastructure under the Integration column.

Collector Configuration

  1. Download the Jolokia JVM JAR file.
    1. Move the downloaded file to the /opt/netuitive-agent/ directory.
    2. Add the following line to the very end of the cassandra-env.sh file (typically located in /etc/cassandra/conf or /opt/cassandra/conf):
      JVM_OPTS="$JVM_OPTS -javaagent:/opt/netuitive-agent/jolokia-jvm-1.3.4-agent.jar"
      Important   When adding this line to your cassandra-env.sh file, ensure that the quotes are not automatically formatted to be smart quotes. Smart quotes will prevent Cassandra from starting.
    3. Restart Cassandra, and confirm Jolokia is running by accessing http://localhost:8778/jolokia/
  2. After installing Jolokia, navigate to the collectors folder. The default location is /opt/netuitive-agent/conf/collectors.
  3. Open the CassandraJolokiaCollector.conf file.
  4. Change the enabled setting to True, save the file, and restart the Linux agent.
  5. Note   This integration's package (computed metrics, dashboards, and policies that will give you important events and alerts) will be automatically enabled and provisioned to your account as soon as Netuitive receives data from the integration. The PACKAGES button on the integration setup page will become active once data is received, so you'll be able to disable and re-enable the package at will.

Additional Configuration Options

Collector Options

Option Default Description
enabled False Enable collecting Cassandra metrics.
host localhost Hostname to collect from.
port 8778 Port to collect from.
path cassandra The metric prefix.
jolokia_path jolokia Path to your Jolokia agent. Typically jmx or jolokia.
mbeans org.apache.cassandra.metrics Pipe ( | ) delimited list of MBeans for which to collect stats. If no list is provided, all MBeans stats will be collected.
metrics_blacklist

.*Histogram.*|.*Percentile$|.*\.Min$|.*\.Max$|.*\.Mean$|.*\.Count$|.*\.StdDev$|.*\.MeanRate$|.*\.FiveMinuteRate$|.*\.FifteenMinuteRate$|.*DroppedMessage.*|.*LastGcInfo.*|Keyspace._Keyspaces.system.*|Keyspace._Keyspaces.*_Tables.*

Regex list to match metrics to block. Mutually exclusive with metrics_whitelist option.
byte_unit   Default numeric output(s).
histogram_regex   Filter to only process attributes that match the specified regex.
measure_collector_time   Measure the collector's run time in milliseconds.
metrics_whitelist   Regex list to match metrics to transmit. Mutually exclusive with metrics_blacklist option.
password   Password used for authentication.
percentiles   Comma separated list of statistical percentiles to collect.
regex   Enables the mbeans option to match with regex.
rewrite  

Config sub-section that contains pairs of from-to regex rewrites.

Example(s)   The rewrite subsection should exist directly underneath the mbeans option like so:
mbeans = "..."
[rewrite]
java = coffee
"-v\d+\.\d+\.\d+" = "-AllVersions"
".*Gets2Activities.*" = ""

...
username   Username used for authentication.

Dependencies

OS

Redhat 6 and 7
CentOS 6 and 7
Amazon Linux (latest)
Ubuntu 12, 14, 15, and 16
Debian 7, 8, and 9

Miscellaneous

Linux Agent
Cassandra

Metrics

Collected

Due to the sheer volume of Cassandra metrics, the individual metrics won't be documented here. Instead, here are some general properties of the groups of metrics:

  • All metrics share the following properties:
    • Type: GAUGE
    • Statistic: average
    • Min: 0
    • Sparse Data Strategy: None
    • BASE:
    • CORR:
    • UTIL:
  • For metrics that end with Latency.OneMinuteRate:
    • Unit = ms (milliseconds)
  • For OneMinuteRate metrics that are not Latency:
    • Unit = ops (operations per second)
  • For metrics that contain HeapSize, DataSize, DiskSpace, Memory, or RowSize:
    • Unit = bytes
  • For metrics ending with HitRate or Ratio:
    • Unit = percentunit (i.e. percentage represented as a value between 0 and 1)
    • Max = 1
Note   The metrics exposed by Cassandra vary from release to release (sometimes quite significantly), but you can find the latest documentation here.

Computed

None.