You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Carsten Ziegeler (Jira)" <ji...@apache.org> on 2021/12/06 10:52:00 UTC

[jira] [Commented] (SLING-10967) Improve Gauge support in metrics

    [ https://issues.apache.org/jira/browse/SLING-10967?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17453939#comment-17453939 ] 

Carsten Ziegeler commented on SLING-10967:
------------------------------------------

Big +1 to this - its currently quiet ugly to use whiteboard for one type of metrics and methods on the MetricsService for other metrics.
Implementation detail: the implementation should not register an OSGi service (which then uses the whiteboard) but directly handle the gauge, similar to the other metrics.

> Improve Gauge support in metrics
> --------------------------------
>
>                 Key: SLING-10967
>                 URL: https://issues.apache.org/jira/browse/SLING-10967
>             Project: Sling
>          Issue Type: Improvement
>          Components: Commons
>    Affects Versions: Commons Metrics 1.2.8
>            Reporter: Joerg Hoh
>            Priority: Major
>
> Currently Sling Metrics only support Gauges via the whiteboard approach (see SLING-5966).
> To leverage gauges you have to register a gauge instance by yourself using the OSGI Framework API and also its whole livecycle. The Sling MetricsService should be able to handle this for you as well like it does for the other metric types (e.g. counter).
> I propose to extend the MetricsService by a new method:
> {code}
> Gauge<T> registerGauge (String name, Supplier<T> supplier);
> {code}
> which registers a Gauge which on every request to {{getValue()}} calls the provided supplier. In most cases the returned Gauge object is not used, but it is returned for consistency with other methods of the MetricsService.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)