Using JMX to get DSEFS metrics for DSE Analytics clusters
DSEFS reports status and performance metrics for DSE Analytics clusters through JMX in the domain com.datastax.bdp:type=dsefs.
For more information about getting and monitoring these metrics, see Monitor DataStax Enterprise (DSE) clusters.
The following DSEFS-related classes are exposed in JMX.
Location
Location metrics provide information about each DSEFS location status.
There is one set of Location metrics for each DSEFS location.
Every DataStax Enterprise (DSE) node knows about all locations, so connect to any node to get the full status of the cluster.
The following gauges are defined:
- directory
-
Path to the directory where DSEFS data is stored. This is a constant value configured in
dse.yaml. - estFreeSpace
-
Estimated amount of free space, in bytes, on the device where the storage directory is located. This value is refreshed periodically, so if you need a recent value, read the
BlockStore.freeSpacemetric. - estUsedSpace
-
Estimated amount of space used by the contents of the storage directory, in bytes. This value is refreshed periodically, so if you need a recent value, read the
BlockStore.usedSpacemetric. - minFreeSpace
-
Amount of reserved space in bytes. Configured statically in
dse.yaml. - privateAddress
-
IP and port of the endpoint for DSEFS internode communication.
- publicAddress
-
IP and port of the endpoint for DSEFS clients.
- readOnly
-
Returns true if the location is in read-only mode.
- status
-
One of the following values:
-
up: The location is fully operational and this node will attempt to read or write from it. -
down: The location is on a node that has been gracefully shut down by the administrator and no reads or writes will be attempted. -
unavailable: This node has problems communicating with that location, and the real status is unknown. This node will check the status periodically.
-
- storageWeight
-
The amount of data, relative to other locations, that will be stored in this location. This is a static value configured in
dse.yaml.
BlockStore
BlockStore metrics report the size and speed of reads/writes by the data layer of the DSEFS node.
They are reported only for the locations managed by the node to which you connect with JMX.
To get metrics information for all the locations in the cluster, you must individually connect to all nodes with DSEFS.
- blocksDeleted
-
The rate at which blocks are deleted, in blocks per second.
- blocksRead
-
The rate at which blocks are read, in blocks per second.
- blocksWritten
-
The rate at which blocks are written, in blocks per second.
- bytesDeleted
-
The rate at which data is removed, in bytes per second.
- bytesRead
-
The rate at which data is being read, in bytes per second.
- bytesWritten
-
The rate at which data is written, in bytes per second.
- readErrors
-
The total count of read errors, and the rate of read errors per second.
- writeErrors
-
The total count of write errors, and the rate of write errors per second.
- directory
-
The path to the storage directory of this location.
- freeSpace
-
The amount of space, in bytes, remaining on the device.
- usedSpace
-
The estimated amount of space, in bytes, used by this location.
RestServer
RestServer reports metrics related to the communication layer of DSEFS.
Metrics are reported separately for internode traffic and clients.
Each set of these metrics is identified by a scope of the form: LISTEN_ADDRESS:LISTEN_PORT.
By default the port for clients is 5598, and the the default port for internode communication is 5599.
- connectionCount
-
The current number of open inbound connections.
- connectionRate
-
The total rate and count of connections since the server was started.
- requestRate
-
The total rate and number of requests, respectively.
Separate metrics are reported for
DELETE,GET,POST,PUT, and all requests.Use
deleteRate,getRate,postRate, orputRateto filter on requests of a specific type. - downloadBytesRate
-
Throughput, in bytes per second, for transfers from server to client.
- uploadBytesRate
-
Throughput, in bytes per second, for transfers from client to server.
- responseTime
-
The elapsed time from receiving a full request body to the moment the server starts sending out the response.
- uploadTime
-
The elapsed time to read the request body from the client.
- downloadTime
-
The elapsed time to send the response body to the client.
- errors
-
A counter that increases every time the service handling a request throws an unexpected error.
This metric isn’t increased by errors handled by the service logic. For example, file not found errors don’t increment this metric.
CassandraClient
CassandraClient reports metrics related to the communication layer between DSEFS and the database.
- responseTime
-
Tracks the response times of database queries.
- errors
-
A counter increased by query execution errors, such as timeout errors.