Skip to content

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

AxonOps Dropped Messages Dashboard Metrics Mapping

This document maps the metrics used in the AxonOps Dropped Messages dashboard.

The Dropped Messages dashboard monitors when Cassandra drops messages due to overload or timeout conditions. Dropped messages are a critical indicator of cluster health and performance issues. When Cassandra cannot process messages within configured timeouts, it drops them to prevent system overload.

Dashboard MetricDescriptionAttributes
cas_DroppedMessage_DroppedCount of dropped messages by typescope (message type), function (Count), axonfunction (rate), dc, rack, host_id
ScopeDescriptionCommon Causes
MUTATIONWrite operations (INSERT, UPDATE, DELETE)Write overload, slow disks, GC pauses
COUNTER_MUTATIONCounter column updatesSimilar to MUTATION but for counter operations
HINTHinted handoff messagesNode recovery backlog, network issues
READRead operations (SELECT)Read overload, large partitions, slow queries
RANGE_SLICERange queries (token ranges)Large range scans, inefficient queries
PAGED_RANGEPaginated range queriesSimilar to RANGE_SLICE but with pagination
ScopeDescriptionCommon Causes
READ_REPAIRRead repair operationsInconsistent data, repair overload
BATCH_STOREBatch log writesBatch operation overload
BATCH_REMOVEBatch log cleanupBatch completion backlog
ScopeDescriptionCommon Causes
REQUEST_RESPONSEInter-node response messagesNetwork latency, coordinator overload
_TRACETracing messagesHeavy tracing load
cas_DroppedMessage_Dropped{axonfunction='rate',function='Count',scope='MUTATION',dc=~'$dc',rack=~'$rack',host_id=~'$host_id'}
cas_DroppedMessage_Dropped{axonfunction='rate',function='Count',scope='HINT',dc=~'$dc',rack=~'$rack',host_id=~'$host_id'}
cas_DroppedMessage_Dropped{axonfunction='rate',function='Count',scope='READ',dc=~'$dc',rack=~'$rack',host_id=~'$host_id'}
// Counter Mutations
cas_DroppedMessage_Dropped{function='Count',scope='COUNTER_MUTATION',dc=~'$dc',rack=~'$rack',host_id=~'$host_id'}
// Paged Range
cas_DroppedMessage_Dropped{function='Count',scope='PAGED_RANGE',dc=~'$dc',rack=~'$rack',host_id=~'$host_id'}

Row 1:

  • Dropped Mutation per secs - Write operation drops

  • Dropped Hints per secs - Hinted handoff drops

  • Dropped Read per secs - Read operation drops

Row 2:

  • Dropped Counter Mutation - Counter operation drops (total count)

  • Dropped Read Repair per secs - Read repair drops

  • Dropped Paged Range - Paginated range query drops (total count)

Row 3:

  • Dropped Batch Store - Batch log write drops (total count)

  • Dropped Batch Remove - Batch log cleanup drops (total count)

  • Dropped Request Response - Inter-node response drops (total count)

Row 4:

  • Dropped Range Slice - Range query drops (total count)

  • Dropped Trace - Tracing message drops (total count)

  • data center (dc) - Filter by data center

  • rack - Filter by rack

  • node (host_id) - Filter by specific node

  • groupBy - Dynamic grouping (dc, rack, host_id, keyspace)

  • Timeout: Message exceeds configured timeout

  • Queue Full: Internal queue reaches capacity

  • Overload: Node cannot keep up with request rate

  • Resource Constraints: Memory, CPU, or I/O limitations

  • MUTATION: 5000ms (write_request_timeout_in_ms)
  • READ: 5000ms (read_request_timeout_in_ms)
  • RANGE_SLICE: 10000ms (range_request_timeout_in_ms)
  • COUNTER_MUTATION: 5000ms (counter_write_request_timeout_in_ms)
  • REQUEST_RESPONSE: 10000ms (request_timeout_in_ms)

Dropped Mutations:

  • Write failures at consistency level
  • Potential data loss if hints also dropped
  • Client receives timeout exceptions

Dropped Reads:

  • Read timeouts for clients
  • Incomplete query results
  • Application errors

Dropped Hints:

  • Delayed consistency
  • Requires repair to fix
  • Indicates replica communication issues

Dropped Read Repairs:

  • Inconsistencies persist longer
  • Manual repair may be needed
  • Background repair falling behind
  1. Check disk I/O performance
  2. Monitor GC pauses
  3. Review write load distribution
  4. Consider increasing timeout
  5. Check for large batches
  1. Look for large partitions
  2. Check read patterns
  3. Monitor CPU usage
  4. Review query efficiency
  5. Consider read timeout increase
  1. Check node availability
  2. Monitor network health
  3. Review hint storage capacity
  4. Check for overloaded nodes
  5. Consider hint delivery throttling
  • Zero Tolerance: Aim for zero dropped messages

  • Early Warning: Any drops indicate problems

  • Root Cause: Always investigate underlying cause

  • Capacity Planning: Drops often indicate need for scaling

  • Rate Metrics: messages per second (short)

  • Count Metrics: absolute count (short)

  • Legend Format: $dc - $host_id

Monitor Continuously:

  • Set alerts for any dropped messages
  • Track trends over time
  • Correlate with other metrics

Investigate Immediately:

  • Dropped messages indicate serious issues
  • Check system resources
  • Review recent changes

Preventive Measures:

  • Proper capacity planning
  • Regular performance tuning
  • Appropriate timeout configuration
  • Load testing before production
  • Some panels show rate (axonfunction='rate'), others show total count
  • Rate metrics are more useful for real-time monitoring
  • Total counts help understand historical impact
  • The _TRACE scope has underscore prefix in the actual metric