Samrat002 commented on code in PR #28427:
URL: https://github.com/apache/flink/pull/28427#discussion_r3610945414


##########
flink-filesystems/flink-s3-fs-native/src/main/java/org/apache/flink/fs/s3native/NativeS3FileSystemFactory.java:
##########
@@ -321,9 +325,53 @@ public class NativeS3FileSystemFactory implements 
FileSystemFactory {
                                     + "When not set, the default chain is 
used: delegation tokens -> "
                                     + "static credentials (if configured) -> 
DefaultCredentialsProvider.");
 
+    public static final ConfigOption<Boolean> METRICS_ENABLED =
+            ConfigOptions.key("s3.metrics.enabled")
+                    .booleanType()
+                    .defaultValue(true)
+                    .withDescription(
+                            "Master switch for publishing S3 operation metrics 
to Flink's metric "
+                                    + "system. When false, no metric publisher 
is attached to the SDK "
+                                    + "and no metric is registered. Metrics 
are only emitted under the "
+                                    + "TaskManager and JobManager entrypoints, 
which provide a "
+                                    + "process-level metric group; other 
contexts (CLI, etc.) emit "
+                                    + "none regardless of this setting.");
+
+    public static final ConfigOption<List<String>> METRICS_ALLOWLIST =
+            ConfigOptions.key("s3.metrics.allowlist")
+                    .stringType()
+                    .asList()
+                    .defaultValues(
+                            "api_call_count",
+                            "api_call_duration_ms",
+                            "throttle_count",
+                            "retry_count",
+                            "iops")
+                    .withDescription(
+                            "Names of S3 metrics to register. Replaces (does 
not merge with) the "
+                                    + "default list. Use \"*\" to register 
every metric the plugin "
+                                    + "emits. An empty list with 
s3.metrics.enabled=true is treated "
+                                    + "as misconfiguration: a warning is 
logged and the defaults are "
+                                    + "used. ('iops' is derived at reporter 
time from api_call_count "
+                                    + "and is not a separately registered 
metric.)");
+
+    public static final ConfigOption<Integer> METRICS_HISTOGRAM_WINDOW_SIZE =
+            ConfigOptions.key("s3.metrics.histogram.window-size")
+                    .intType()
+                    .defaultValue(1024)
+                    .withDescription(
+                            "Reservoir size for S3 latency histograms 
(api_call_duration_ms). "
+                                    + "Bounds memory regardless of request 
volume. Must be positive.");

Review Comment:
   Yes. It is the number of retained latency samples per operation histogram.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to