public class Metrics extends Object
The metrics exposed by this class use the Metrics library and you should refer its documentation for details on how to handle the exposed metric objects.
By default, metrics are exposed through JMX, which is very useful for development and browsing, but for production environments you may want to have a look at the reporters provided by the Metrics library which could be more efficient/adapted.
| Modifier and Type | Class and Description | 
|---|---|
| class  | Metrics.ErrorsMetrics on errors encountered. | 
| Modifier and Type | Method and Description | 
|---|---|
| com.codahale.metrics.Gauge<Integer> | getBlockingExecutorQueueDepth() | 
| com.codahale.metrics.Gauge<Integer> | getConnectedToHosts()Returns the number of Cassandra hosts the driver is currently connected to
 (that is have at least one connection opened to). | 
| Metrics.Errors | getErrorMetrics()Returns an object grouping metrics related to the errors encountered. | 
| com.codahale.metrics.Gauge<Integer> | getExecutorQueueDepth() | 
| com.codahale.metrics.Gauge<Integer> | getKnownHosts()Returns the number of Cassandra hosts currently known by the driver (that is
 whether they are currently considered up or down). | 
| com.codahale.metrics.Gauge<Integer> | getOpenConnections()Returns the total number of currently opened connections to Cassandra hosts. | 
| com.codahale.metrics.Gauge<Integer> | getReconnectionSchedulerQueueSize() | 
| com.codahale.metrics.MetricRegistry | getRegistry()Returns the registry containing all metrics. | 
| com.codahale.metrics.Timer | getRequestsTimer()Returns metrics on the user requests performed on the Cluster. | 
| com.codahale.metrics.Gauge<Integer> | getTaskSchedulerQueueSize() | 
| com.codahale.metrics.Gauge<Integer> | getTrashedConnections()Returns the total number of currently "trashed" connections to Cassandra hosts. | 
public com.codahale.metrics.MetricRegistry getRegistry()
The metrics registry allows you to easily use the reporters that ship with Metrics or a custom written one.
 For instance, if metrics is this object, you could export the
 metrics to csv files using:
 
     com.codahale.metrics.CsvReporter.forRegistry(metrics.getRegistry()).build(new File("measurements/")).start(1, TimeUnit.SECONDS);
 
 
 If you already have a MetricRegistry in your application and wish to
 add the driver's metrics to it, the recommended approach is to use a listener:
 
     // Your existing registry:
     final com.codahale.metrics.MetricRegistry myRegistry = ...
     cluster.getMetrics().getRegistry().addListener(new com.codahale.metrics.MetricRegistryListener() {
         @Override
         public void onGaugeAdded(String name, Gauge<?> gauge) {
             if (myRegistry.getNames().contains(name)) {
                 // name is already taken, maybe prefix with a namespace
                 ...
             } else {
                 myRegistry.register(name, gauge);
             }
         }
         ... // Implement other methods in a similar fashion
     });
 
 Since reporting is handled by your registry, you'll probably also want to disable
 JMX reporting with Cluster.Builder.withoutJMXReporting().public com.codahale.metrics.Timer getRequestsTimer()
This metric exposes
Timer metric object exposing the rate and latency for
 user requests.public Metrics.Errors getErrorMetrics()
public com.codahale.metrics.Gauge<Integer> getKnownHosts()
public com.codahale.metrics.Gauge<Integer> getConnectedToHosts()
public com.codahale.metrics.Gauge<Integer> getOpenConnections()
public com.codahale.metrics.Gauge<Integer> getTrashedConnections()
 When the load to a host decreases, the driver will reclaim some connections in order to save
 resources. No requests are sent to these connections anymore, but they are kept open for an
 additional amount of time (PoolingOptions.getIdleTimeoutSeconds()), in case the load
 goes up again. This metric counts connections in that state.
public com.codahale.metrics.Gauge<Integer> getExecutorQueueDepth()
public com.codahale.metrics.Gauge<Integer> getBlockingExecutorQueueDepth()
public com.codahale.metrics.Gauge<Integer> getReconnectionSchedulerQueueSize()
public com.codahale.metrics.Gauge<Integer> getTaskSchedulerQueueSize()
Copyright © 2012–2015. All rights reserved.