Denis Chudov created IGNITE-25422:
-------------------------------------

             Summary: Add metrics for raft disruptors
                 Key: IGNITE-25422
                 URL: https://issues.apache.org/jira/browse/IGNITE-25422
             Project: Ignite
          Issue Type: Improvement
            Reporter: Denis Chudov


*Motivation*

Currently there are jsut these metrics:

 
{code:java}
public DisruptorMetrics disruptorMetrics(String name) {
    return new DisruptorMetrics(
            (DistributionMetric) metrics.get(name + ".Batch"),
            (DistributionMetric) metrics.get(name + ".Stripes")
    );
} {code}
which means batch size and stripe hits.

 

We need to add the count of pending tasks (there is a separate queue (ring 
buffer) for each stripe):
{code:java}
long cursor = rb.getCursor();
long minConsumer = rb.getMinimumGatingSequence();
long pending = cursor - minConsumer; {code}
This will allow us to make conclusions about the possible delays for task 
processing. 

 

Also, the time of processing might be useful.

*Definition of done*

Additional disruptor metrics are created:

- pending tasks (for each stripe, maximum, minimum, median)

- time of processing

 



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

Reply via email to