[
https://issues.apache.org/jira/browse/FLINK-39544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yuepeng Pan updated FLINK-39544:
--------------------------------
Affects Version/s: 2.5.0
> Improve observability in flink-s3-fs-native by exposing operation-level S3
> metrics
> ----------------------------------------------------------------------------------
>
> Key: FLINK-39544
> URL: https://issues.apache.org/jira/browse/FLINK-39544
> Project: Flink
> Issue Type: New Feature
> Components: Connectors / FileSystem
> Affects Versions: 2.3.0, 2.5.0
> Reporter: Samrat Deb
> Priority: Major
> Fix For: 2.4.0
>
>
> flink-s3-fs-native currently exposes only coarse IO counters. Operators
> cannot see
> per-operation latency, S3 throttling (HTTP 503 SlowDown), retry counts and
> reasons,
> multipart-upload lifecycle, stream reopens, or connection-pool saturation
> through
> Flink's metric system. When the checkpoint duration regresses in production,
> there is
> no Flink signal to attribute the cause to S3 vs the network vs the state
> backend.
> Diagnosing such incidents today requires correlating Flink logs with AWS
> CloudTrail
> or capturing packets, neither scales as a routine operational practice.
> This ticket proposes to bridge AWS SDK v2's built-in MetricPublisher into
> Flink's
> MetricGroup from inside flink-s3-fs-native, plus a small set of
> plugin-specific
> metrics that the SDK cannot see (NativeS3InputStream reopens,
> RecoverableWriter /
> multipart-upload lifecycle).
> **Why this is targeted at flink-s3-fs-native specifically:**
> flink-s3-fs-native owns its S3AsyncClient directly and can therefore attach an
> AWS SDK v2 MetricPublisher at client construction. The same approach is not
> available to flink-s3-fs-hadoop and flink-s3-fs-presto, because both delegate
> to
> a Hadoop-owned filesystem (org.apache.hadoop.fs.s3a.S3AFileSystem and the
> Presto
> equivalent), which constructs and owns the S3 client internally. Hadoop S3A
> exposes its own IOStatistics framework, not AWS SDK v2 MetricPublisher;
> surfacing
> Those statistics into Flink would require a separate adapter, a Hadoop version
> floor, and is coupled to S3A internals that change across Hadoop releases.
> Doing
> this work in flink-s3-fs-native therefore, has the cleanest dependency
> footprint
> and the lowest classpath risk.
>
>
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)