Introduction
ArangoDB is a multi-model database that supports document, key-value, and graph data models within a single engine.
Prometheus can monitor these components by scraping metrics they expose, providing insights into cluster health, performance, and system status.
Kubernetes 2.0 ConfigMap
Users should update or append the existing ConfigMap named opsramp-workload-metric-user-config
by adding application-specific fields. These fields may include authentication credentials, collection frequency, and other relevant configurations.
apiVersion: v1
kind: ConfigMap
metadata:
name: opsramp-workload-metric-user-config
namespace: opsramp-agent
data:
workloads: |
arangodb:
- name: arangodb
collectionFrequency: 59s
port: 8529
userName: "root"
password: ""
userRelabelConfigs:
- regex: "rocksdb_cache_edge_inserts_total"
action: "include"
- regex: "rocksdb_cache_active_tables"
action: "include"
- regex: "arangodb_aql_cursors_active"
action: "include"
targetPodSelector:
matchLabels:
- key: role
operator: ==
value:
Supported Metrics
Supported metrics for this workload as provided by the Kubernetes 2.0 Agent.
Metric | Description |
---|---|
arangodb_agency_cache_callback_number | Tracks the number of callbacks in the agency cache. |
arangodb_agency_callback_number | Represents the total number of callbacks registered in the agency. |
arangodb_agency_callback_registered_total | Counts the total number of callbacks successfully registered in the agency. |
arangodb_agencycomm_request_time_msec_bucket | Distribution of request times in milliseconds for agency communication. |
arangodb_agencycomm_request_time_msec_count | Total count of agency communication requests. |
arangodb_agencycomm_request_time_msec_sum | Summed total of time taken for agency communication requests. |
arangodb_aql_all_query_total | Counts all queries executed in ArangoDB's AQL engine. |
arangodb_aql_current_query | Tracks the number of currently running AQL queries. |
arangodb_aql_cursors_active | Monitors the number of active AQL cursors. |
arangodb_aql_cursors_memory_usage | Memory consumed by active AQL cursors. |
arangodb_aql_global_memory_limit | Defines the global memory limit for AQL queries. |
arangodb_aql_global_memory_usage | Tracks current memory usage of all running AQL queries. |
arangodb_aql_global_query_memory_limit_reached_total | Counts instances where AQL queries exceeded the global memory limit. |
arangodb_aql_local_query_memory_limit_reached_total | Counts instances where a local AQL query exceeded its memory limit. |
arangodb_aql_query_time_bucket | Distribution of AQL query execution times. |
arangodb_aql_query_time_count | Total number of executed AQL queries. |
arangodb_aql_query_time_sum | Total execution time of all AQL queries. |
arangodb_aql_slow_query_time_bucket | Distribution of slow AQL query execution times. |
arangodb_aql_slow_query_time_count | Number of AQL queries identified as slow. |
arangodb_aql_slow_query_time_sum | Total execution time for slow AQL queries. |
arangodb_aql_total_query_time_msec_total | Tracks the total execution time of all AQL queries in milliseconds. |
arangodb_collection_lock_acquisition_micros_total | Total time spent acquiring collection locks in microseconds. |
arangodb_collection_lock_acquisition_time_bucket | Distribution of collection lock acquisition times. |
arangodb_collection_lock_acquisition_time_count | Counts the number of collection lock acquisitions. |
arangodb_collection_lock_acquisition_time_sum | Summed time spent acquiring collection locks. |
arangodb_collection_lock_sequential_mode_total | Total number of times the collection lock was acquired in sequential mode. |
arangodb_collection_lock_timeouts_exclusive_total | Counts the number of exclusive collection lock timeouts. |
arangodb_collection_lock_timeouts_write_total | Counts the number of write lock timeouts for collections. |
arangodb_connection_pool_connections_created_total | Total number of database connections created in the pool. |
arangodb_connection_pool_connections_current | Number of active connections currently in the pool. |
arangodb_connection_pool_lease_time_hist_bucket | Distribution of lease times for connection pool usage. |
arangodb_connection_pool_lease_time_hist_count | Counts the number of connection pool leases. |
arangodb_connection_pool_lease_time_hist_sum | Total lease time for connection pool usage. |
arangodb_connection_pool_leases_failed_total | Total number of failed lease requests in the connection pool. |
arangodb_connection_pool_leases_successful_total | Total number of successful lease requests in the connection pool. |
arangodb_connection_statistics_memory_usage | Tracks memory consumption for managing database connections. |
arangodb_dirty_read_queries_total | Number of queries executed that resulted in dirty reads. |
arangodb_dirty_read_transactions_total | Number of transactions executed with dirty reads. |
arangodb_file_descriptors_current | Number of file descriptors currently in use. |
arangodb_file_descriptors_limit | Maximum number of file descriptors allowed. |
arangodb_flush_subscriptions | Number of active flush subscriptions. |
arangodb_heartbeat_failures_total | Number of failed heartbeat messages in the cluster. |
arangodb_heartbeat_send_time_msec_bucket | Distribution of heartbeat send times in milliseconds. |
arangodb_heartbeat_send_time_msec_count | Counts the number of heartbeat messages sent. |
arangodb_heartbeat_send_time_msec_sum | Summed total of all heartbeat send times. |
arangodb_http1_connections_total | Total number of HTTP/1 connections handled by the server. |
arangodb_http2_connections_total | Total number of HTTP/2 connections handled by the server. |
arangodb_index_estimates_memory_usage | Memory used for index estimation. |