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

Bharat Viswanadham commented on HDDS-910:
-----------------------------------------

Hi [~elek]

Thanks for sharing the info @Metrics can be used on methods, but for 
SCMNodeManagerMXBean this will not work. As @Metrics for methods will be 
allowed if the return type is int, long, float, double. As here I have Map, we 
get the below error when I tried to use @Metrics annotation on methods. I will 
go with the approach of implementing MetricsSource to expose metrics in MXBeans.

 

 
{code:java}
scm_1           | 2018-12-19 00:24:05 ERROR StorageContainerManager:392 - 
Failed to start the StorageContainerManager.
scm_1           | org.apache.hadoop.metrics2.MetricsException: Unsupported 
gauge type: java.util.Map
scm_1           | at 
org.apache.hadoop.metrics2.lib.MethodMetric.newGauge(MethodMetric.java:122)
scm_1           | at 
org.apache.hadoop.metrics2.lib.MethodMetric.newImpl(MethodMetric.java:63)
scm_1           | at 
org.apache.hadoop.metrics2.lib.MethodMetric.<init>(MethodMetric.java:52)
scm_1           | at 
org.apache.hadoop.metrics2.lib.MutableMetricsFactory.newForMethod(MutableMetricsFactory.java:102)
scm_1           | at 
org.apache.hadoop.metrics2.lib.MetricsSourceBuilder.add(MetricsSourceBuilder.java:167)
scm_1           | at 
org.apache.hadoop.metrics2.lib.MetricsSourceBuilder.<init>(MetricsSourceBuilder.java:72)
scm_1           | at 
org.apache.hadoop.metrics2.lib.MetricsAnnotations.newSourceBuilder(MetricsAnnotations.java:43)
scm_1           | at 
org.apache.hadoop.metrics2.impl.MetricsSystemImpl.register(MetricsSystemImpl.java:223)
scm_1           | at 
org.apache.hadoop.hdds.scm.node.SCMNodeManagerMetrics.create(SCMNodeManagerMetrics.java:58)
scm_1           | at 
org.apache.hadoop.hdds.scm.server.StorageContainerManager.<init>(StorageContainerManager.java:317)
scm_1           | at 
org.apache.hadoop.hdds.scm.server.StorageContainerManager.createSCM(StorageContainerManager.java:
{code}
 

 

 

> Expose OMMetrics
> ----------------
>
>                 Key: HDDS-910
>                 URL: https://issues.apache.org/jira/browse/HDDS-910
>             Project: Hadoop Distributed Data Store
>          Issue Type: Bug
>            Reporter: Bharat Viswanadham
>            Assignee: Bharat Viswanadham
>            Priority: Major
>         Attachments: HDDS-910.00.patch
>
>
> Implement MetricsSource interface, so that external metrics can collect the 
> OMMetrics.
>  
> From *MetricsSource.java:*
> It registers with \{@link MetricsSystem}, which periodically polls it to 
> collect \{@link MetricsRecord} and passes it to \{@link MetricsSink}.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to