Denis Chudov created IGNITE-17448:
-------------------------------------

             Summary: Implementation of metric source for cluster state
                 Key: IGNITE-17448
                 URL: https://issues.apache.org/jira/browse/IGNITE-17448
             Project: Ignite
          Issue Type: Bug
            Reporter: Denis Chudov


At least, could be implemented metric showing *topology version*.
What is needed to achieve this:

Define metrics source class and metrics holder class for ignite compute.
Define all metric variables in the holder class, if needed.
Implement initialization logic which is responsible for creation of actual 
instances of metrics and building an immutable instance of metrics set (will be 
executed on metrics enabling). Implement additional clean up logic if needed 
(will be executed on metrics disabled).
Define methods that implement desirable manipulations with metrics. Every such 
method must check the state of the metrics source (enabled\disabled) by testing 
the holder reference to null (some kind of guard) before modifying a metric 
value. Read holder reference only once and use it in scope of the method in 
order to avoid data races.
Metrics source should be registered in metrics registry on component start and 
should be unregistered on component stop. Initial metrics source state 
(enabled\disabled) should be set according to configuration for each particular 
component.
Add logic related with metrics values modification (add invocations of metrics 
source methods).



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

Reply via email to