[ 
https://issues.apache.org/jira/browse/FLINK-37340?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ruan Hang updated FLINK-37340:
------------------------------
    Fix Version/s: 2.3.0
                       (was: 2.2.0)

> Flink supports pushing metrics immediately at the end of the task.
> ------------------------------------------------------------------
>
>                 Key: FLINK-37340
>                 URL: https://issues.apache.org/jira/browse/FLINK-37340
>             Project: Flink
>          Issue Type: Improvement
>          Components: Runtime / Metrics
>    Affects Versions: 2.0-preview
>            Reporter: lizhiqiang
>            Priority: Major
>             Fix For: 2.3.0
>
>
> In Flink's stream computing, metrics should be pushed once at the end of the 
> task. But now the metrics are relying on timed scheduling to configure them, 
> which may lead to inaccurate metrics at the end of the task.
> scheduler interval config : 
> {code:java}
> metrics.reporter.xxx.interval: 60 SECONDS {code}
> If A is set to be particularly large, then the metric may be more imprecise
>  
> Flink's batch computing can't utilize the flink-metric plugin to push metrics 
> to third-party systems. It may be necessary to make some changes to Flink's 
> metrics process.
> Some of my thoughts are whether to aggregate metrics to JobManager through 
> heartbeat detection.
>  
>  
> {code:java}
> //代码占位符
> org.apache.flink.runtime.metrics.MetricRegistryImpl#MetricRegistryImpl(org.apache.flink.runtime.metrics.MetricRegistryConfiguration,
>  java.util.Collection<org.apache.flink.runtime.metrics.ReporterSetup>, 
> java.util.concurrent.ScheduledExecutorService)
> executor.scheduleWithFixedDelay(
> new ReporterTask((Scheduled) reporterInstance),
> period.toMillis(),
> period.toMillis(),
> TimeUnit.MILLISECONDS); {code}
>  
>  
>  
> {code:java}
> //代码占位符
> @Override
> public void report() {
>     try {
>      //Push every 60 seconds         
>         pushGateway.push(registry, jobName, groupingKey);
>     } catch (Exception e) {
>         log.warn(
>                 "Failed to push metrics to PushGateway with jobName {}, 
> groupingKey {}.",
>                 jobName,
>                 groupingKey,
>                 e);
>     }
> } {code}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to