[ 
https://issues.apache.org/jira/browse/IGNITE-17448?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Denis Chudov updated IGNITE-17448:
----------------------------------
    Issue Type: New Feature  (was: Bug)

> Implementation of metric source for cluster state
> -------------------------------------------------
>
>                 Key: IGNITE-17448
>                 URL: https://issues.apache.org/jira/browse/IGNITE-17448
>             Project: Ignite
>          Issue Type: New Feature
>            Reporter: Denis Chudov
>            Priority: Major
>              Labels: ignite-3
>
> 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