aws / aws/aws-sdk-java-v2

ExecutionInterceptor access to request attempt exceptions

Offen
#929 3 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen
feature-request p3
Vorherrschende Sprache
Java
Sterne
2.6k
Forks
1k
Ø Merge
2 T. 9 Std.
Gemergte PRs (30 T.)
51

Beschreibung

Maybe this is just a documentation change that is needed but reading through the `ExecutionInterceptor` comments and traversing through the code I don't see a way to get access to the intermediate exceptions that get retried.

## Expected Behavior
`ExecutionInterceptor` should have a hook like `onRequestFailure` that would give access to the exception for a specific HTTP request. This would provide the ability to see throttles and other types of events at the request level when it may resolve during the retries.

## Current Behavior
The current behavior as I understand it is to add some internal state to the retry handler but to only emit that once the retries have been exhausted.

## Possible Solution
Add a new Stage for `RequestFailure` that the `RetryableStage` can delegate to for these hooks

## Context
When we instrumented the V1 SDK we had the ability to retrieve the intermediate exceptions. With V2 that is not possible at the moment. See https://github.com/openzipkin/zipkin-aws/issues/116 for the corresponding issue on our end.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit den Kommentaren zu ExecutionInterceptor und verfolge RetryableStage sowie den im Issue erwähnten retry handler. Ermittle, wo Zwischenfehler derzeit aufbewahrt oder ausgegeben werden, und überprüfe anschließend, dass Informationen zu Fehlern auf Anfrageebene während der Wiederholungsversuche verfügbar sind, während das bestehende Verhalten bei erschöpften Wiederholungsversuchen erhalten bleibt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
api, backend-api-design
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.