[
https://issues.apache.org/jira/browse/STORM-1966?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15376961#comment-15376961
]
ASF GitHub Bot commented on STORM-1966:
---------------------------------------
Github user HeartSaVioR commented on a diff in the pull request:
https://github.com/apache/storm/pull/1560#discussion_r70809388
--- Diff:
storm-core/src/jvm/org/apache/storm/metric/MetricsConsumerBolt.java ---
@@ -43,19 +44,21 @@
OutputCollector _collector;
Object _registrationArgument;
private final int _maxRetainMetricTuples;
- private Predicate<IMetricsConsumer.DataPoint> _filterPredicate;
+ private final Predicate<IMetricsConsumer.DataPoint> _filterPredicate;
+ private final DataPointExpander _populator;
private final BlockingQueue<MetricsTask> _taskQueue;
private Thread _taskExecuteThread;
private volatile boolean _running = true;
public MetricsConsumerBolt(String consumerClassName, Object
registrationArgument, int maxRetainMetricTuples,
- Predicate<IMetricsConsumer.DataPoint>
filterPredicate) {
+ Predicate<IMetricsConsumer.DataPoint>
filterPredicate, DataPointExpander populator) {
--- End diff --
Oh I missed that. Thanks!
> Expand metric having Map type as value into multiple metrics based on entries
> -----------------------------------------------------------------------------
>
> Key: STORM-1966
> URL: https://issues.apache.org/jira/browse/STORM-1966
> Project: Apache Storm
> Issue Type: Improvement
> Components: storm-core
> Affects Versions: 2.0.0, 1.1.0
> Reporter: Jungtaek Lim
> Assignee: Jungtaek Lim
>
> We're introducing "metrics filter" (STORM-1700) into Storm 1.1.0, which can
> give a control of volume and kinds of metrics to users.
> After playing with metrics, I found that most of built-in metrics in Storm
> (core and storm-kafka) are having Map as value which have been expected to be
> populated from Metrics Consumer. Since filter resides on metrics consumer
> bolt (not injected to metrics consumer) filter cannot know how metrics are
> populated, thus can't filter out some of populated metrics.
> For example, let's say we have metric which name is 'A' and value is \{"B":
> 1, "C": 2\}. For now we can't filter out 'A.C' and keep only 'A.B' since
> filter even doesn't know 'A' will be changed to 'A.B' and 'A.C'.
> Since well-known metrics consumer (like storm-graphite) already supports
> populating metrics from one level map of value, I'd like to support this from
> Storm side and apply filter to populated metrics.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)