Icon

Comments have been closed on this page. Please use AppMon & UEM Plugins forum for questions about this plugin.

Overview

The dynaTrace FastPack for the Apache Cassandra NoSQL Database enables easy out-of-the-box monitoring. The FastPack consists predefined JMX Measures for Cassandra, Sensors for Cassandra Server and Cassandra Clients, Business Transactions a Template Profile and Dashboards.

Fast Pack Details

Name

Apache Cassandra Monitoring FastPack

Version

1.0.1

dynaTrace Version

>= 5.5

Author

Michael Kopp

License

dynaTrace BSD

Support

Not Supported

FastPack Contents

Fastpack Download contains:

  • Cassandra Performance Overview
  • Template Profile
    • Server and Client Sensors
    • Business Transactions for Cassandra Server and Client Actions
    • Business Transaction to monitor Compaction (Versions 0.8,1.x)

Cassandra Performance Overview

The Cassandra Load Dashboard gives an Overview of Client and Server Side performance and Load.

  • Client Side Times (avg/max)
    This first row shows the Cassandra response time from the applications point of view. It automatically splits into its separate operation types and shows average and max for each. this can be used to see if there is a big difference between server and client performance and if the response time is volatile
  • Server Side Load
    This shows the number of requests per operation types that are executed on the Cassandra servers
  • Server Side Response Times (avg/max)
    Shows the Cassandra server side response time per operation type. It shows average and max to give a feeling of volatility
  • Cassandra CPU Load
    This show the average CPU load over all Cassandra instances
  • Active and Pending Tasks
    Cassandra executes several tasks per request and other background tasks. Under normal circumstances there should be no backlog. Once an instance starts to get overloaded in some area the active and subsequently the pending tasks will be rising. If this shows a continuous growing trend you need to investigate further. If it is stable but none zero there is room to optimize
  • GC Suspensions and Cassandra Compactions
    Cassandra is sensitive to Garbage Collection. Frequent GC suspensions indicate too much load and or non optimal configuration of the memtables.
    Cassandra also needs to do Compaction on its data. If this happens too often or takes too long the it is either overloaded or the memtables are not configured correctly for one of the column families.

Business Transactions

  • Cassandra Compaction
    There are two versions of this Business Transaction, one for the current 1.0.x release and one for the last stable release (0.8.x). The newer one shows compaction per keyspace and column family. The older one shows compaction per column family and SSTable.
  • Cassandra Action
    Shows Cassandra Server Side Operations. Those include the typical get, get_slice, batch_mutate and others
  • Cassandra Client
    Shows Cassandra Client Side Operations. Those include the typical get, get_slice, batch_mutate and others

FastPack Information

The Fastpack contains a Dashboard and a Template System Profile. In addition it contains a Metric Group for Cassandra JMX Measures, some of which are already subscribed in the system profile.
dynaTrace can monitor any JMX attribute available within Cassandra in addition to those supplied in this fastpack.
The System Profile already contains an Agent Group for Cassandra, just add the dynaTrace agent to your JVM_OPTS when starting Cassandra (use name=Cassandra). This agent group contains some minor modifications to allow optimal monitoring of Cassandra.
The System profile also contains all necessary Sensors to monitor both Server and client side. Add the Cassandra Common Sensor group in your own agent groups.

Installation

Just download and import the FastPack on your Dynatrace Server (see Plugin Management)

If you start with a fresh system simply copy the provided System profile (to give it an application specific name) and add agent groups for your own application. If you want to use Cassandra in an existing System profile please copy the following items to your system profile.

  • Cassandra Business Transactions (you only need to copy those that apply to your Cassandra version)
  • Both sensor groups
  • the Cassandra Agent Group cannot be copied please do the following
    • Create a separate agent group for Cassandra
    • apply both Cassandra sensor groups
    • disable the Executor Tagging sensor

Contribution

Feel free to contribute any changes on Github

  1. Anonymous (login to see details)

    Hi Michael,

    I can't have this FastPack working with .NET client. Does this plugin only works with Java Clients ?

    Best Regards,

    Philippe

  2. Anonymous (login to see details)

    Hi Philippe

    The FastPack works for Java-based Cassandra Client Libraries. Not for .NET in the moment. For .NET you will however see dynatrace automatically pick up the calls in the Cassandra API in case these calls have a performance impact. If you always want to see the calls to the Cassandra API you can define your own custom sensors so that dynatrace always picks them up. Also allows you to capture method arguments of these calls to get more context such as the data you want to query

    Andi

  3. Anonymous (login to see details)

    are you working on a custom sensor for .net?   We are looking to see if we can build one, but this will be our first one.   Is there some information about how we can build this?

    we also would like to do the same for not only Cassandra, but for Mongo as well.

     

  4. Anonymous (login to see details)

    Hi. Currently there are no active plans of building such a Sensor Pack that I am aware of.

    If you go ahead and come up with Sensors that work for you feel free to Export that System Profile that contains your Sensor Rules. We can then help you upload this to this page as a FastPack so that others can leverage that is well. If you have any other things you are working on also let us know. Simply send us an email to community@dynatrace.com

    Andi

  5. Anonymous (login to see details)

    Hi Andi,

    I have an application that uses Cassandra.  A web application is connect to Cassandra DB.  I first instrumented the web application and able to see the CQL being sent to Cassandra. 

    I, then, instrumented the Cassandra server side.  After that I downloaded the fast pack and copied the sensor pack, and business transaction over to the existing system profile.  The agent is connected fine.  I am able to see the host process (CPU, memory, JVM, etc) from monitoring dashboard.

    However, when I try to see the pure path from Cassandra sever, I cannot see any.  The Cassandra dashboard also show no chart after I changed the source and system profile. 

    Did I do anything wrong? Please advise. My apology in advance if this is not the place to ask for such advise.

    Thanks,

    -Ronald

    1. Anonymous (login to see details)

      Hi Ron. Could you do me the favor and post this question to http://answers.dynatrace.com?

      1. Anonymous (login to see details)

        Sure.Thanks!

  6. Anonymous (login to see details)

    Hi,

    We sucessfully set up this Cassandra fastpack and every measure appears in the "Cassandra - load" dashboard except for the "Active and Pending Tasks" dashlet.

    The following measure do not exist:

    Internal.ActiveCount
    Internal.PendingTasks
    Request.ActiveCount
    Request.PendingTasks

    Is it a known issue ?

    Thanks for your help.

     

  7. Anonymous (login to see details)

    With the Cassandra sensor that's delivered OOTB in the product, is there any value to this Fastpack any longer?

    1. Anonymous (login to see details)

      Hi Joe. I just checked with the engineering team. They think that this FastPack is still relevant as the dashboard with these metrics is not yet part of the OOTB Support. Question is whether we should move some of this to the OOTB Product Delivery. For now the FastPack is still good to be used!

  8. Anonymous (login to see details)

    Hi,

    I see the this fastpack page recommends disabling the Executor Tagging sensor. However, the AppMon 6.5 documentation page on Cassandra integration states that "in order to be able to see Cassandra CQL3 protocol based statement execution, the Executor Tagging sensor needs to be active". 

    Does this sensor need to be enabled or disabled? (or is there no difference).

    Thank you