Metrics

There are a number of metrics that can be used to monitor the Object storage’s status.

The metrics differ somewhat in case of a Swarm setup or a S3 setup.

1. Swarm setup

The metrics for a Swarm setup can be divided into the connection monitoring to the Object storage and the monitoring of the requests and nodes monitoring.

Connection monitoring:

metric description
object-storage.http.pool.total.max The total maximum configured connections in the connection pool
object-storage.http.pool.total.count.leased The total of leased connections
object-storage.http.pool.total.count.available The total of available connections
object-storage.http.pool.total.count.pending The total of pending connections
object-storage.http.pool.routes The total number of routes
object-storage.http.pool.route.max.node.{hostname} The total maximum configured connections for all routes
object-storage.http.pool.route.count.node.{hostname}.state.leased The total of leased connections for a specific routes
object-storage.http.pool.route.count.node.{hostname}.state.available The total of available connections for a specific routes
object-storage.http.pool.route.count.node.{hostname}.state.pending The total of pending connections for a specific routes

Request monitoring:

The optional part between the square brackets depends on the setting exportTagsForRoute.

metric description
object-storage.http.client.request.cluster.{clusterName}[.target.{scheme}{targetHost}{port}].method.{method}.status.{status} Duration of the request execution
object-storage.http.client.request.size.cluster.{clusterName}[.target.{scheme}{targetHost}{port}].method.{method}.status.{status} Number of bytes sent by the Http client
object-storage.http.client.response.size.cluster.{clusterName}[.target.{scheme}{targetHost}{port}].method.{method}.status.{status} Number of bytes received by the Http client

Swarm cluster metrics:

metric description
object-storage.nodes.count.cluster.{clusterName} Number of nodes/documents in cluster
object-storage.nodes.failures.cluster.{clusterName}.node.{nodeName} Number of node failures per node

2. S3 setup

The metrics for the S3 setup can also be divided into connection pool monitoring and request monitoring metrics.

Connection pool metrics:

metric description
object-storage.http.pool.total.max.bucket.{bucketName} The configured maximum number of allowed persistent connections
object-storage.http.pool.total.count.bucket.{bucketName}.state.leased The number of leased connections
object-storage.http.pool.total.count.bucket.{bucketName}.state.available The number of available connections
object-storage.http.pool.total.count.bucket.{bucketName}.state.pending The number of pending connections

Request monitoring metrics:

metric description
object-storage.http.client.request.bucket.{bucketName}[.{request endpoint}].method.{method}.status.{status} Duration of Apache HttpClient request execution
object-storage.http.client.request.size.bucket.{bucketName}[.{request endpoint}].method.{method}.status.{status} Number of bytes sent by the Http client