Update PropagationContext on changes
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Refactoring
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- python
- Bereich
- backend, observability-sre
Rechercherichtung
Beginne damit, nachzuverfolgen, wo PropagationContext aktualisiert wird, und untersuche die Logik, die auf den aktiven Span zurückfällt, einschließlich ihrer Wechselwirkung mit scope.span. Überprüfe vor Änderungen den alten Tracing-Code und die Änderungen von Span First. Fertig ist die Aufgabe, wenn span_id und parent_span_id den aktuellen Zustand widerspiegeln und Verbraucher den Propagation Context als einzige Quelle der Wahrheit verwenden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Currently, we only ever update the PropagationContext on trace start or trace continuation. It's then not kept in sync with what's actually going on: for example, the span_id field is never updated to the actual running span, and the parent_span_id field is not updated to the parent of the currently running span.
This means we have a lot of fragmented logic all around, first checking the active span for data, and only falling back to the PropagationContext when not available. The PropagationContext should be the single point of truth.
Goals
- update the propagation context's
span_id,parent_span_idwhenever these change, so that they represent the actual current state - check for places where we fall back to checking the propagation context and change them so that we use propagation context only (i.e., don't check for current span first, just use whatever is stored in the propagation context)
Notes
- Might be easier to do after we've ripped out the old tracing code with the changes for Span First.
- See how this interacts with
scope.span
- Vorherrschende Sprache
- Python
- Sterne
- 2.2k
- Forks
- 672
- Ø Merge
- 22 Std. 54 Min.
- Gemergte PRs (30 T.)
- 235
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus getsentry/sentry-python
-
Python
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
getsentry/sentry-python#7668 · 1 Kommentar ·
-
Python
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
getsentry/sentry-python#7671 · 1 Kommentar ·
-
Python
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
getsentry/sentry-python#7663 · 1 Kommentar ·
-
Python
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
getsentry/sentry-python#7660 · 1 Kommentar ·
-
Python
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
getsentry/sentry-python#7652 · 1 Kommentar ·
Alle Issues in getsentry/sentry-python
Ähnliche Issues
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
stephrobert/dsoxlab#238 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
sublimehq/package_control#1780 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
nwg-piotr/nwg-displays#145 ·