Our Cassandra integration sends performance metrics and inventory data from your Cassandra database to the New Relic platform. You can view pre-built dashboards of your Cassandra metric data, create alert policies, and create your own custom queries and charts.
Read on to install the integration, and to see what data we collect.
Compatibility and requirements
Our integration is compatible with Apache Cassandra version 3.x or higher.
Before installing the integration, make sure that you meet the following requirements:
- Java Runtime Environment 7 or higher.
- If Cassandra is not running on Kubernetes or Amazon ECS, you must install the infrastructure agent on a Linux host that's running Cassandra. Otherwise:
- If running on Kubernetes, see these requirements.
- If running on ECS, see these requirements.
Quick start
Instrument your Cassandra database quickly and send your telemetry data with guided install. Our guided install creates a customized CLI command for your environment that downloads and installs the New Relic CLI and the infrastructure agent.
ヒント
If you're hosted in the EU, use our EU guided install.
Install and activate
To install the Cassandra integration, follow the instructions for your environment:
Additional notes:
- Advanced: Integrations are also available in tarball format to allow for install outside of a package manager.
- On-host integrations do not automatically update. For best results, regularly update the integration package and the infrastructure agent.
Configure the integration
An integration's YAML-format configuration is where you can place required login credentials and configure how data is collected. Which options you change depend on your setup and preference.
There are several ways to configure the integration, depending on how it was installed:
- If enabled via Kubernetes: see Monitor services running on Kubernetes.
- If enabled via Amazon ECS: see Monitor services running on ECS.
- If installed on-host: edit the config in the integration's YAML config file,
cassandra-config.yml
.
Commands
The configuration accepts the following commands:
metrics
: Captures the metrics for a particular Cassandra node, including required login info.inventory
: Captures the configuration parameters set in the Cassandra config file as inventory data. To disable the collection of inventory data, delete theinventory
parameter.labels
: Theenv
label controls theenvironment
attribute. The default value isproduction
.
Arguments
The metrics
command accept the following arguments:
hostname
: The Cassandra node hostname.port
: The port where Cassandra is listening and exposing metrics and variables via JMX.username
: The username to connect to Cassandra via JMX.password
: The password to connect to Cassandra via JMX.timeout
: Request for timeout in milliseconds.key_store
: The filepath of the keystore containing the JMX client's SSL certificate.key_store_password
: The password for the JMX SSL key store.trust_store
: The filepath of the trust keystore containing the JMX server's SSL certificate.trust_store_password
: The password for the JMX trust store.
The inventory
command accept the following arguments:
hostname
: The Cassandra node hostname.config_path
: The path to the Cassandra config file.
Activate remote monitoring
The remote_monitoring
parameter enables remote monitoring and multi-tenancy for this integration.
Activating remote_monitoring
may change some attributes and/or affect your configured alerts. For more information, see remote monitoring in on-host integrations.
重要
Infrastructure agent version 1.2.25 or higher is required to use remote_monitoring
.
Environment variable passthroughs
Environment variables can be used to control config settings, and are then passed through to the infrastructure agent. For instructions, see Configure the infrastructure agent.
重要
With secrets management, you can configure on-host integrations with New Relic Infrastructure's agent to use sensitive data (such as passwords) without having to write them as plain text into the integration's configuration file. For more information, see Secrets management.
For more about the general structure of on-host integration configuration, see Configuration.
Find and use data
Data from this service is reported to an integration dashboard.
Cassandra data is attached to the CassandraSample
and CassandraColumnFamilySample
event types. You can query this data for troubleshooting purposes or to create charts and dashboards.
For more on how to find and use your data, see Understand integration data.
Metric data
The Cassandra integration collects the following metrics.
Node metrics
Cassandra node metrics are attached to the CassandraSample
event type. The Cassandra integration collects these node metrics:
Name | Description |
---|---|
| Total amount of bytes stored in the memtables (2i and pending flush memtables included) that resides on-heap. |
| Total amount of bytes stored in the memtables (2i and pending flush memtables included) that resides off-heap. |
| The number of commit log messages written per second. |
| Number of commit log messages written but yet to be fsync’ed. |
| Current size, in bytes, used by all the commit log segments. |
| Dropped messages per second for this type of request. |
| Key cache capacity in bytes. |
| One-minute key cache hit rate. |
| Number of key cache hits per second. |
| Number of requests to the key cache per second. |
| Size of occupied cache in bytes. |
| Number of SSTables on disk for this column family. |
| Size, in bytes, of the on disk data size this node manages. |
| Row cache capacity in bytes. |
| One-minute row cache hit rate. |
| Number of row cache hits per second. |
| Number of requests to the row cache per second. |
| Total size of occupied row cache, in bytes. |
| Number of tasks being actively worked on by this pool.
|
| Number of tasks being actively worked on by this pool. |
| Number of hints currently attempting to be sent. |
| Number of hint messages per second written to this node. Includes one entry for each host to be hinted per hint. |
| Transaction read latency in requests per second. |
| Transaction write latency in requests per second. |
| Number of range slice requests per second. |
| Number of timeouts encountered per second when processing token range read requests. |
| Number of unavailable exceptions encountered per second when processing token range read requests. |
| Read latency in milliseconds, 50th percentile. |
| Read latency in milliseconds, 75th percentile. |
| Read latency in milliseconds, 95th percentile. |
| Read latency in milliseconds, 98th percentile. |
| Read latency in milliseconds, 999th percentile. |
| Read latency in milliseconds, 99th percentile. |
| Number of read requests per second. |
| Number of timeouts encountered per second when processing standard read requests. |
| Number of unavailable exceptions encountered per second when processing standard read requests. |
| Number of view write requests per second. |
| Write latency in milliseconds, 50th percentile. |
| Write latency in milliseconds, 75th percentile. |
| Write latency in milliseconds, 95th percentile. |
| Write latency in milliseconds, 98th percentile. |
| Write latency in milliseconds, 999th percentile. |
| Write latency in milliseconds, 99th percentile. |
| Number of write requests per second. |
| Number of timeouts encountered per second when processing regular write requests. |
| Number of unavailable exceptions encountered per second when processing regular write requests. |
Cassandra column family metrics and metadata
The Cassandra integration retrieves column family metrics. Cassandra column family data is attached to the CassandraColumnFamilySample
event type. It skips system keyspaces (system
, system_auth
, system_distributed
, system_schema
, system_traces
and OpsCenter
). To limit the performance impact, the integration will only capture metrics for a maximum of 20 column families.
The following metadata indicates the keyspace and column family associated with the sample metrics:
Name | Description |
---|---|
| The Cassandra column family these metrics refer to. |
| The Cassandra keyspace that contains this column family. |
| The keyspace and column family in a single metadata attribute in the following format: |
The list of metrics below refer to the specific keyspace and column family specified in the metadata above:
Name | Description |
---|---|
| Total number of bytes stored in the memtables (2i and pending flush memtables included) that resides off-heap. |
| Total number of bytes stored in the memtables (2i and pending flush memtables included) that resides on-heap. |
| Disk space in bytes used by SSTables belonging to this column family (in bytes). |
| Number of SSTables on disk for this column family. |
| Estimate of number of pending compactions for this column family. |
| Number of sstable data files accessed per read, 50th percentile. |
| Number of sstable data files accessed per read, 75th percentile. |
| Number of sstable data files accessed per read, 95th percentile. |
| Number of sstable data files accessed per read, 98th percentile. |
| Number of sstable data files accessed per read, 999th percentile. |
| Number of sstable data files accessed per read, 99th percentile. |
| Local read latency in milliseconds for this column family, 50th percentile. |
| Local read latency in milliseconds for this column family, 75th percentile. |
| Local read latency in milliseconds for this column family, 95th percentile. |
| Local read latency in milliseconds for this column family, 98th percentile. |
| Local read latency in milliseconds for this column family, 999th percentile. |
| Local read latency in milliseconds for this column family, 99th percentile. |
| Number of read requests per second for this column family. |
| Local write latency in milliseconds for this column family, 50th percentile. |
| Local write latency in milliseconds for this column family, 75th percentile. |
| Local write latency in milliseconds for this column family, 95th percentile. |
| Local write latency in milliseconds for this column family, 98th percentile. |
| Local write latency in milliseconds for this column family, 999th percentile. |
| Local write latency in milliseconds for this column family, 99th percentile. |
| Number of write requests per second for this column family. |
Inventory
The integration captures configuration options defined in the Cassandra configuration and reports them as inventory data in the New Relic UI.
System metadata
The Cassandra integration also collects these attributes about the service and its configuration:
Name | Description |
---|---|
| The Cassandra version. |
| The name of the cluster this Cassandra node belongs to. |
Troubleshooting
Troubleshooting via jmxterm
JMXTerm is a command line interactive tool bundled within the integration package.
Docs for JMXTerm can be found at our nrjmx page in GitHub.
Check the source code
This integration is open source software. That means you can browse its source code and send improvements, or create your own fork and build it.
その他のヘルプ
さらに支援が必要な場合は、これらのサポートと学習リソースを確認してください:
- Explorers Hubでは、コミュニティからのサポートを受けたり、ディスカッションに参加したりすることができます。
- 当社サイトで答えを見つけて、サポートポータルの使用方法を確認してください。
- Linux、Windows、およびmacOS向けトラブルシューティングツールであるNew Relic Diagnosticsを実行してください。
- New Relicのデータセキュリティとライセンスドキュメント をご確認ください。