[
https://issues.apache.org/jira/browse/FLINK-7692?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16278365#comment-16278365
]
ASF GitHub Bot commented on FLINK-7692:
---------------------------------------
Github user zentol commented on a diff in the pull request:
https://github.com/apache/flink/pull/5115#discussion_r154904663
--- Diff:
flink-runtime/src/main/java/org/apache/flink/runtime/metrics/groups/AbstractMetricGroup.java
---
@@ -409,6 +404,22 @@ public MetricGroup addGroup(String name) {
return addGroup(name, false);
}
+ @Override
+ public MetricGroup addGroup(String key, String value) {
--- End diff --
For any `GenericKeyMetricGroup` to be created, `keyed` must be true. Since
this is only the case when creating the first group I don't understand how it
could happen that the second group is created as a key group.
This commit
https://github.com/zentol/flink/commit/f3a91f6296994a33a7be448bec40f261b5343972
removes the special case in addGroup(String, String) and reverts the logic for
`createChildGroup` (which introduced a bug). The `MetricGroupTest` is passing.
> Support user-defined variables in Metrics
> -----------------------------------------
>
> Key: FLINK-7692
> URL: https://issues.apache.org/jira/browse/FLINK-7692
> Project: Flink
> Issue Type: Improvement
> Components: Metrics
> Affects Versions: 1.4.0
> Reporter: Chesnay Schepler
> Assignee: Wei-Che Wei
> Priority: Minor
> Fix For: 1.5.0
>
>
> Reporters that identify metrics with a set of key-value pairs are currently
> limited to the variables defined by Flink, like the taskmanager ID, with
> users not being able to supply their own.
> This is inconsistent with reporters that use metric identifiers that freely
> include user-defined groups constructted via {{MetricGroup#addGroup(String
> name)}}.
> I propose adding a new method {{MetricGroup#addGroup(String key, String
> name)}} that adds a new key-value pair to the {{variables}} map in it's
> constructor. When constructing the metric identifier the key should be
> included as well, resulting in the same result as when constructing the
> metric groups tree via {{group.addGroup(key).addGroup(value)}}.
> For this a new {{KeyedGenericMetricGroup}} should be created that resembles
> the unkeyed version, with slight modifications to the constructor and
> {{getScopeComponents}} method.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)