[
https://issues.apache.org/jira/browse/FLINK-2720?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15952910#comment-15952910
]
ASF GitHub Bot commented on FLINK-2720:
---------------------------------------
Github user mjsax commented on a diff in the pull request:
https://github.com/apache/flink/pull/3615#discussion_r109326716
--- Diff:
flink-contrib/flink-storm/src/main/java/org/apache/flink/storm/metric/MetricConvert.java
---
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.flink.storm.metric;
+
+import org.apache.flink.metrics.Counter;
+import org.apache.flink.streaming.api.operators.StreamingRuntimeContext;
+import org.apache.storm.metric.api.CountMetric;
+import org.apache.storm.metric.api.IMetric;
+import org.apache.storm.metric.api.MultiCountMetric;
+
+/**
+ * @since Mar 25, 2017
+ *
+ */
+public class MetricConvert {
+
+ /**
+ *
+ * @param name
+ * @param originalMetric
+ * @param context
+ * @return
+ */
+ @SuppressWarnings("unchecked")
+ public static <T extends IMetric> IMetricAdapter<T>
convertFlinkAdapter(String name, T originalMetric,
+ StreamingRuntimeContext context) {
+ if (originalMetric instanceof CountMetric) {
+ Counter flinkc = context.getMetricGroup().counter(name);
+ return (IMetricAdapter<T>) new
CounterMetricAdapter(flinkc);
+ } else if (originalMetric instanceof MultiCountMetric) {
+ return (IMetricAdapter<T>) new
MultiCountMetricAdapter(context);
+ }
+ return null;
--- End diff --
I guess it's better to throw an exception here.
> Add Storm-CountMetric in flink-stormcompatibility
> -------------------------------------------------
>
> Key: FLINK-2720
> URL: https://issues.apache.org/jira/browse/FLINK-2720
> Project: Flink
> Issue Type: New Feature
> Components: Storm Compatibility
> Reporter: Huang Wei
> Assignee: Matthias J. Sax
> Fix For: 1.0.0
>
> Original Estimate: 168h
> Remaining Estimate: 168h
>
> Add the CountMetric for the first step of storm metrics:
> 1.Do a wrapper FlinkCountMetric for CountMetric
> 2.push the RuntimeContext in FlinkTopologyContext to use `addAccumulator`
> method for registering the metric.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)