Ling Mao created CASSANDRA-21556:
------------------------------------

             Summary: Add metrics about Netty memeory usage
                 Key: CASSANDRA-21556
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-21556
             Project: Apache Cassandra
          Issue Type: Improvement
          Components: Observability/Metrics
            Reporter: Ling Mao


When Netty Direct Memory leaks occur, they can be extremely difficult to 
diagnose and may cause serious production issues. Add metrics to monitor Netty 
memory usage for observability, debugging, and alerting.

The comments in `NettyMemoryMetrics` provide a summary of what contributes to 
Netty Direct Memory and Java Direct Memory usage.

Do not use `Netty allocator.metric()` for these metrics. The memory usage from 
individual allocators is relatively small and distributed across different 
components. Additionally, querying allocator metrics is not as lightweight as 
using `PlatformDependent::usedDirectMemory`.

The metrics location:

 
{code:java}
org.apache.cassandra.metrics:type=NettyMemory,name=UsedDirectMemory
org.apache.cassandra.metrics:type=NettyMemory,name=DirectMemoryLimit
# promethus metrics
# HELP cassandra_nettymemory_directmemorylimit Attribute exposed for management 
org.apache.cassandra.metrics:name=DirectMemoryLimit,type=NettyMemory,attribute=Value
# TYPE cassandra_nettymemory_directmemorylimit gauge
cassandra_nettymemory_directmemorylimit 4.294967296E9
# HELP cassandra_nettymemory_useddirectmemory Attribute exposed for management 
org.apache.cassandra.metrics:name=UsedDirectMemory,type=NettyMemory,attribute=Value
# TYPE cassandra_nettymemory_useddirectmemory gauge
cassandra_nettymemory_useddirectmemory 1.6777216E7
{code}
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to