Skip to content

AxonOps — AI-Native Control Plane for Open Source Data Platforms

Accessing AxonOps Metrics with Grafana

Generate an API token with read-only permission to the clusters you wish to access.

  • Log in to https://console.axonops.com.

  • Navigate in the left menu to API Tokens.

    api_token_menu
  • Click on Create New API Token button and complete the details. generate_api_token

  • Configure a new Prometheus data source in Grafana
  • Set the URL to https://dash.axonops.cloud/$ORGNAME
  • Enable Basic auth.
  • Paste the API key in the User field
  • Click Save & Test

Now you should be able to browse and query the metrics from the Explore interface.

See the video below:

AxonOps exposes metrics using a Prometheus-compatible API. Metrics are organized by prefix:

  • host_ - System metrics (CPU, memory, disk, network)
  • jvm_ - JVM metrics (heap, garbage collection)
  • cas_ - Cassandra metrics (client requests, tables, compaction, thread pools)
  • client_ - Client application metrics (throughput, latency)
  • kaf_ - Kafka metrics (controller, replication, topics, consumers)

For complete metric references, see:

MetricDescription
host_CPU_Percent_MergeCPU usage percentage
host_Memory_UsedUsed memory in bytes
host_Memory_FreeFree memory in bytes
host_Memory_TotalTotal memory in bytes
host_Memory_BuffersBuffer memory
host_Memory_CachedCached memory
host_Disk_UsedPercentDisk usage percentage
host_Disk_UsedUsed disk space in bytes
host_Disk_SectorsReadDisk sectors read
host_Disk_SectorsWriteDisk sectors written
host_Network_ReceiveBytesNetwork bytes received
host_Network_TransmitBytesNetwork bytes transmitted
MetricDescription
jvm_Memory_HeapHeap memory usage
jvm_MemoryPool_*Specific memory pool metrics
jvm_GarbageCollector_*GC metrics by collector
jvm_GarbageCollector_G1_Young_GenerationG1 young gen GC
jvm_GarbageCollector_Shenandoah_CyclesShenandoah GC cycles
jvm_GarbageCollector_Shenandoah_PausesShenandoah GC pauses
jvm_GarbageCollector_ZGCZGC metrics
MetricDescription
cas_ClientRequest_LatencyRequest latency at coordinator
cas_ClientRequest_TimeoutsRequest timeouts
cas_ClientRequest_UnavailablesUnavailable exceptions
cas_Client_connectedNativeClientsConnected native protocol clients
MetricDescription
cas_Table_ReadLatencyLocal read latency
cas_Table_WriteLatencyLocal write latency
cas_Table_RangeLatencyLocal range query latency
cas_Table_CoordinatorReadLatencyCoordinator read latency
cas_Table_CoordinatorWriteLatencyCoordinator write latency
cas_Table_CoordinatorScanLatencyCoordinator range scan latency
cas_Table_LiveDiskSpaceUsedLive data disk space
cas_Table_TotalDiskSpaceUsedTotal disk space
cas_Table_LiveSSTableCountNumber of SSTables
cas_Table_CompressionRatioCompression effectiveness
cas_Table_MinPartitionSizeMinimum partition size
cas_Table_MeanPartitionSizeAverage partition size
cas_Table_MaxPartitionSizeMaximum partition size
cas_Table_EstimatedPartitionCountEstimated partitions
cas_Table_TombstoneScannedHistogramTombstones scanned
cas_Table_SSTablesPerReadHistogramSSTables per read
cas_Table_SpeculativeRetriesSpeculative retry attempts
cas_Table_BloomFilterFalseRatioBloom filter false positive ratio
cas_Table_BloomFilterDiskSpaceUsedBloom filter disk usage
cas_Table_AllMemtablesHeapSizeMemtable heap memory
cas_Table_AllMemtablesOffHeapSizeMemtable off-heap memory
MetricDescriptionKey Attributes
cas_Compaction_TotalCompactionsCompletedCompleted compactionsaxonfunction
cas_Compaction_BytesCompactedBytes compactedaxonfunction
cas_CompactionManager_*Compaction manager metricsmetric (PendingTasks/CompletedTasks)
MetricDescriptionKey Attributes
cas_ThreadPools_requestRequest thread poolsscope (pool name), key (ActiveTasks/PendingTasks/CompletedTasks)
cas_ThreadPools_internalInternal thread poolsscope (pool name), key (ActiveTasks/PendingTasks/CompletedTasks)
cas_ThreadPools_transportTransport thread poolsscope (pool name), key (ActiveTasks/PendingTasks/CompletedTasks)
MetricDescriptionKey Attributes
cas_Cache_*Cache statisticsscope (KeyCache/RowCache/CounterCache), metric (Capacity/Size/Hits/Requests)
MetricDescription
cas_CQL_PreparedStatementsExecutedPrepared statements executed
cas_CQL_RegularStatementsExecutedRegular statements executed
cas_CQL_PreparedStatementsCountCached prepared statements
cas_CQL_PreparedStatementsRatioPrepared statement ratio
MetricDescription
cas_DroppedMessage_DroppedDropped messages by type
MetricDescription
cas_Storage_TotalHintsTotal hints created
cas_Storage_TotalHintsInProgressActive hints being delivered
MetricDescription
cas_ReadRepair_AttemptedRead repair attempts
cas_ReadRepair_RepairedBackgroundBackground repairs completed
cas_ReadRepair_RepairedBlockingBlocking repairs completed
MetricDescription
cas_Keyspace_ReadLatencyKeyspace read latency
cas_Keyspace_WriteLatencyKeyspace write latency
cas_Keyspace_RangeLatencyKeyspace range latency
cas_Keyspace_MemtableOnHeapDataSizeKeyspace memtable heap size
cas_Keyspace_SSTablesPerReadHistogramSSTables per read by keyspace
MetricDescription
cas_CommitLog_WaitingOnSegmentAllocationTime waiting for segment allocation
MetricDescription
client_throughput_readClient read throughput
client_throughput_writeClient write throughput
client_latency_readClient read latency
client_latency_writeClient write latency
MetricDescription
cas_authentication_successSuccessful authentications
MetricDescription
kaf_KafkaController_ActiveControllerCountActive controller count (should be 1)
kaf_KafkaController_OfflinePartitionsCountPartitions without leaders
kaf_KafkaController_PreferredReplicaImbalanceCountPartitions with non-preferred leaders
kaf_KafkaController_GlobalTopicCountTotal topics in cluster
kaf_KafkaController_GlobalPartitionCountTotal partitions in cluster
kaf_KafkaController_FencedBrokerCountNumber of fenced brokers
kaf_KafkaController_LastAppliedRecordTimestampLast applied record timestamp
kaf_KafkaController_MetadataErrorCountMetadata error count
kaf_ControllerStats_UncleanLeaderElectionsPerSecUnclean leader election rate
kaf_ControllerStats_LeaderElectionRateAndTimeMsLeader election rate and time
MetricDescription
kaf_ReplicaManager_LeaderCountPartitions where broker is leader
kaf_ReplicaManager_PartitionCountTotal partitions on broker
kaf_ReplicaManager_UnderReplicatedPartitionsUnder-replicated partitions
kaf_ReplicaManager_UnderMinIsrPartitionCountPartitions under min ISR
kaf_ReplicaManager_AtMinIsrPartitionCountPartitions at min ISR
kaf_ReplicaManager_OfflineReplicaCountOffline replica count
kaf_ReplicaManager_IsrShrinksPerSecISR shrink rate
kaf_ReplicaManager_IsrExpandsPerSecISR expansion rate
kaf_ReplicaManager_ReassigningPartitionsPartitions being reassigned
MetricDescription
kaf_BrokerTopicMetrics_BytesInPerSecIncoming byte rate
kaf_BrokerTopicMetrics_BytesOutPerSecOutgoing byte rate
kaf_BrokerTopicMetrics_MessagesInPerSecIncoming message rate
kaf_BrokerTopicMetrics_TotalFetchRequestsPerSecFetch request rate
kaf_BrokerTopicMetrics_TotalProduceRequestsPerSecProduce request rate
kaf_BrokerTopicMetrics_FailedFetchRequestsPerSecFailed fetch request rate
kaf_BrokerTopicMetrics_FailedProduceRequestsPerSecFailed produce request rate
kaf_BrokerTopicMetrics_BytesRejectedPerSecRejected bytes rate
kaf_BrokerTopicMetrics_FetchMessageConversionsPerSecFetch message conversion rate
kaf_BrokerTopicMetrics_ProduceMessageConversionsPerSecProduce message conversion rate
MetricDescription
kaf_RequestMetrics_RequestsPerSecRequest rate
kaf_RequestMetrics_TotalTimeMsTotal request time
kaf_RequestMetrics_LocalTimeMsLocal processing time
kaf_RequestMetrics_RemoteTimeMsRemote processing time
kaf_RequestMetrics_RequestQueueTimeMsTime in request queue
kaf_RequestMetrics_ResponseQueueTimeMsTime in response queue
kaf_RequestMetrics_ResponseSendTimeMsResponse send time
kaf_RequestChannel_RequestQueueSizeRequest queue size
kaf_RequestChannel_ResponseQueueSizeResponse queue size
MetricDescription
kaf_KafkaRequestHandlerPool_RequestHandlerAvgIdlePercentRequest handler idle percentage
kaf_SocketServer_NetworkProcessorAvgIdlePercentNetwork processor idle percentage
kaf_DelayedOperationPurgatory_PurgatorySizeDelayed operations in purgatory
kaf_socket_server_metrics_Socket server metrics
kaf_Acceptor_AcceptorBlockedPercentAcceptor blocked percentage
kaf_LogManager_LogDirectoryOfflineOffline log directories
MetricDescription
kaf_RaftMetrics_CurrentLeaderCurrent Raft leader
kaf_RaftMetrics_CurrentEpochCurrent Raft epoch
kaf_RaftMetrics_HighWatermarkRaft high watermark
kaf_RaftMetrics_CurrentStateCurrent Raft state
kaf_RaftMetrics_CommitLatencyAvgAverage commit latency
kaf_RaftMetrics_AppendRecordsRateRecord append rate
kaf_RaftMetrics_PollIdleRatioAvgPoll idle ratio
MetricDescription
kaf_GroupMetadataManager_NumGroupsTotal consumer groups
kaf_GroupMetadataManager_NumGroupsStableStable consumer groups
kaf_GroupMetadataManager_NumGroupsPreparingRebalanceGroups preparing rebalance
kaf_GroupMetadataManager_NumGroupsCompletingRebalanceGroups completing rebalance
kaf_GroupMetadataManager_NumGroupsDeadDead consumer groups
kaf_GroupMetadataManager_NumGroupsEmptyEmpty consumer groups
kaf_kafka_consumer_lag_millisConsumer lag in milliseconds
MetricDescription
kaf_Log_NumLogSegmentsNumber of log segments
kaf_Log_SizeLog size in bytes
kaf_Log_LogEndOffsetLog end offset
kaf_Log_LogStartOffsetLog start offset
MetricDescription
kaf_Partition_UnderReplicatedUnder-replicated partition
kaf_Partition_AtMinIsrPartition at minimum ISR
kaf_Partition_UnderMinIsrPartition under minimum ISR
kaf_Partition_InSyncReplicasCountIn-sync replicas count
kaf_Partition_ReplicasCountTotal replicas count
kaf_Partition_LastStableOffsetLagLast stable offset lag
MetricDescription
kaf_SessionExpireListener_ZooKeeperDisconnectsPerSecZooKeeper disconnect rate
kaf_SessionExpireListener_ZooKeeperExpiresPerSecZooKeeper session expiry rate
kaf_SessionExpireListener_ZooKeeperAuthFailuresPerSecZooKeeper auth failure rate
kaf_SessionExpireListener_ZooKeeperSyncConnectsPerSecZooKeeper sync connect rate
kaf_ZooKeeperClientMetrics_ZooKeeperRequestLatencyMsZooKeeper request latency
MetricDescription
kaf_connect_worker_metrics_task_countNumber of tasks
kaf_connect_worker_metrics_connector_countNumber of connectors
kaf_connect_worker_metrics_connector_startup_attempts_totalConnector startup attempts
kaf_connect_worker_metrics_connector_startup_failure_totalConnector startup failures
kaf_connect_worker_metrics_connector_startup_success_totalConnector startup successes
kaf_connect_worker_metrics_task_startup_attempts_totalTask startup attempts
kaf_connect_worker_metrics_task_startup_failure_totalTask startup failures
kaf_connect_worker_metrics_task_startup_success_totalTask startup successes
kaf_connect_worker_rebalance_rebalance_completed_totalRebalances completed
kaf_connect_worker_rebalance_rebalancingCurrently rebalancing
kaf_connect_worker_rebalance_connect_protocolConnect protocol
kaf_connector_task_batch_size_avgAverage batch size
kaf_connector_task_offset_commit_avg_time_msOffset commit time
kaf_connector_task_offset_commit_success_percentageOffset commit success rate
kaf_source_task_source_record_poll_rateSource record poll rate
kaf_source_task_source_record_write_rateSource record write rate
kaf_sink_task_sink_record_read_rateSink record read rate
kaf_sink_task_sink_record_send_rateSink record send rate
kaf_sink_task_sink_record_lag_maxMaximum sink record lag
kaf_task_error_deadletterqueue_produce_failuresDLQ produce failures
kaf_task_error_deadletterqueue_produce_requestsDLQ produce requests
kaf_task_error_total_errors_loggedTotal errors logged
kaf_task_error_total_record_errorsTotal record errors
kaf_task_error_total_record_failuresTotal record failures
kaf_task_error_total_retriesTotal retries

AxonOps uses a Prometheus-compatible query language. For detailed documentation, see Prometheus Query Language.

AxonOps optimizes rate calculations at the source. Instead of using the Prometheus rate() function, embed axonfunction='rate' as a label:

# AxonOps rate syntax
cas_ClientRequest_Latency{axonfunction='rate',function='Count'}
# Instead of Prometheus style
rate(cas_ClientRequest_Latency{function='Count'}[5m])
  • dc - Datacenter
  • rack - Rack
  • host_id - Node identifier
  • keyspace - Cassandra keyspace
  • scope - Table name or operation type
  • function - Aggregation type (Count, percentiles)

Available percentile values:

  • 50thPercentile, 75thPercentile, 95thPercentile
  • 98thPercentile, 99thPercentile, 999thPercentile

Read latency P99 by node:

cas_ClientRequest_Latency{scope='Read',function='99thPercentile'}

Write throughput (rate):

cas_ClientRequest_Latency{axonfunction='rate',scope='Write',function='Count'}

Disk usage percentage:

host_Disk_UsedPercent{mountpoint='/var/lib/cassandra'}

Heap memory usage:

jvm_Memory_Heap{type='usage'}

Pending compactions:

cas_CompactionManager{metric='PendingTasks'}

Table read latency for a specific keyspace:

cas_Table_ReadLatency{keyspace='my_keyspace',function='99thPercentile'}

Connected clients:

cas_Client_connectedNativeClients

Dropped messages rate:

cas_DroppedMessage_Dropped{axonfunction='rate',function='Count'}

Key cache hit rate:

cas_Cache{scope='KeyCache',metric='Hits'}

Pending tasks in MutationStage thread pool:

cas_ThreadPools_request{scope='MutationStage',key='PendingTasks'}

Under-replicated partitions:

kaf_ReplicaManager_UnderReplicatedPartitions

Messages in per second:

kaf_BrokerTopicMetrics_MessagesInPerSec{axonfunction='rate'}

Consumer lag:

kaf_kafka_consumer_lag_millis{group_id='my-consumer-group'}

Request handler idle percentage:

kaf_KafkaRequestHandlerPool_RequestHandlerAvgIdlePercent{function='OneMinuteRate'}

ISR shrinks (indicates replication issues):

kaf_ReplicaManager_IsrShrinksPerSec{function='MeanRate'}

Filter by datacenter:

cas_ClientRequest_Latency{dc='dc1',function='99thPercentile'}

Filter by multiple nodes using regex:

host_CPU_Percent_Merge{host_id=~'node1|node2|node3'}

Exclude specific racks:

cas_Table_ReadLatency{rack!='rack1',function='99thPercentile'}