Skip to content

Commit bb46c2f

Browse files
committed
[SPARK-53664] Update updateResponseMetrics to handle valid responses only
### What changes were proposed in this pull request? This PR aims to make `updateResponseMetrics` to handle valid responses only. ### Why are the changes needed? To simplify the method logic. ### Does this PR introduce _any_ user-facing change? No behavior change. ### How was this patch tested? Pass the CIs. ### Was this patch authored or co-authored using generative AI tooling? No. Closes apache#331 from dongjoon-hyun/SPARK-53664. Authored-by: Dongjoon Hyun <[email protected]> Signed-off-by: Dongjoon Hyun <[email protected]>
1 parent a6e837d commit bb46c2f

File tree

1 file changed

+9
-11
lines changed

1 file changed

+9
-11
lines changed

spark-operator/src/main/java/org/apache/spark/k8s/operator/metrics/source/KubernetesMetricsInterceptor.java

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import java.util.ArrayList;
2626
import java.util.List;
2727
import java.util.Map;
28+
import java.util.Objects;
2829
import java.util.Optional;
2930
import java.util.concurrent.CompletableFuture;
3031
import java.util.concurrent.ConcurrentHashMap;
@@ -129,7 +130,7 @@ public void after(
129130
@Override
130131
public CompletableFuture<Boolean> afterFailure(
131132
BasicBuilder builder, HttpResponse<?> response, RequestTags tags) {
132-
updateResponseMetrics(null, System.nanoTime());
133+
requestFailedRateMeter.mark();
133134
return CompletableFuture.completedFuture(false);
134135
}
135136

@@ -143,7 +144,7 @@ public CompletableFuture<Boolean> afterFailure(
143144
*/
144145
@Override
145146
public void afterConnectionFailure(HttpRequest request, Throwable failure) {
146-
updateResponseMetrics(null, System.nanoTime());
147+
requestFailedRateMeter.mark();
147148
}
148149

149150
/**
@@ -181,16 +182,13 @@ private void updateRequestMetrics(HttpRequest request) {
181182
}
182183

183184
private void updateResponseMetrics(HttpResponse response, long startTimeNanos) {
185+
Objects.requireNonNull(response);
184186
final long latency = System.nanoTime() - startTimeNanos;
185-
if (response != null) {
186-
this.responseRateMeter.mark();
187-
this.responseLatency.update(latency);
188-
getMeterByResponseCode(response.code()).mark();
189-
if (KUBERNETES_CLIENT_METRICS_GROUP_BY_RESPONSE_CODE_GROUP_ENABLED.getValue()) {
190-
responseCodeGroupMeters.get(response.code() / 100 - 1).mark();
191-
}
192-
} else {
193-
this.requestFailedRateMeter.mark();
187+
responseRateMeter.mark();
188+
responseLatency.update(latency);
189+
getMeterByResponseCode(response.code()).mark();
190+
if (KUBERNETES_CLIENT_METRICS_GROUP_BY_RESPONSE_CODE_GROUP_ENABLED.getValue()) {
191+
responseCodeGroupMeters.get(response.code() / 100 - 1).mark();
194192
}
195193
}
196194

0 commit comments

Comments
 (0)