Skip to content

Commit fbb289f

Browse files
committed
more tyops
1 parent fee7a50 commit fbb289f

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

develop-docs/sdk/telemetry/spans/implementation.mdx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ If you're implementing Span-First (as a PoC) in your SDK, take an iterative appr
3131
- This new API MUST only be used in conjunction with the new `traceLifeCycle` option and therefore only emit new spans (no transactions).
3232
- This new API MUST NOT expose any old transaction properties or concepts like (`op`, `description`, `tags`, etc).
3333
- TBD: Some SDKs already have `startSpan` or similar APIs. The migration path is still TBD but a decision can be made at a later stage.
34-
5. Implment the `captureSpan` [single-span processing pipeline](#single-span-processing-pipeline)
34+
5. Implement the `captureSpan` [single-span processing pipeline](#single-span-processing-pipeline)
3535
- Either reuse existing heuristics (e.g. flush when segment span ends) or build a simple span buffer to flush spans (e.g. similar to the existing buffers for logs or metrics).
3636
- Implementing the more complex [Telemetry Buffer](./../telemetry-buffer/index) can happen at a later stage.
3737
6. Achieve data parity with the existing transaction events.
@@ -57,15 +57,15 @@ Here's a rough overview of what `captureSpan` should do in which order:
5757

5858
1. Accept any span that already ended (i.e. has an `end_timestamp`)
5959
2. Obtain the current, isolation and global scopes and merge the scope data.
60-
3. Apply [common span attributes](../span-protocol/#common-attribute-keys) from the client and the methed scope data to every span.
60+
3. Apply [common span attributes](../span-protocol/#common-attribute-keys) from the client and the merged scope data to every span.
6161
4. Apply the merged scope data (including scope attributes) to the span IFF it is a segment span.
6262
5. Apply any span processing hooks (i.e. event processor replacements) to the span.
6363
6. Apply the `before_send_span` callback to the span.
6464
7. Enqueue the span into the span buffer.
6565

6666
The `captureSpan` pipeline MUST NOT
6767
- drop any span
68-
- buffer spans before enqueing them
68+
- buffer spans before enqueuing them
6969

7070
### [TMP solution] Span Filtering
7171

@@ -77,21 +77,21 @@ We might revisit this, which could require changes to the single-span processing
7777

7878
For now, this means though:
7979
- Whenever `ignore_spans` is applied, SDKs MUST NOT start an actual span. Instead, they SHOULD start a No-op ("non-recording") span, which has no influence on the trace hierarchy.
80-
- SDKS MUST record client outcomes for ingored spans
80+
- SDKS MUST record client outcomes for ignored spans
8181
- SDKs MUST apply `ignore_spans` to every span if at all possible (POTel SDKs are excepted, but encouraged to do so as well)
8282

8383
### [TBD] Event Processors
8484

8585
Given that spans no longer are events (as opposed to transactions), they don't go through our event processors, which are exensively used throughout the SDKs (clients, integrations) but also by users.
8686
Instead, we need to find another way for users or integrations to enrich and mutate spans.
8787

88-
For user-facing migration, we should try to solve every use case with `ingore_spans` (for filtering) and `before_send_span` (for enrichment, data scrubbing and span mutation).
88+
For user-facing migration, we should try to solve every use case with `ignore_spans` (for filtering) and `before_send_span` (for enrichment, data scrubbing and span mutation).
8989

9090
For SDK-internal processing, we're still evaluating the preferred approach but there are two main options:
9191

9292
1. Expose new APIs for integrations (and secondarily users) to process a span.
9393
For example via SDK lifecycle hooks (implemented in the JS SDK).
94-
Every intergration would have to listen to this hook and apply its logic to spans.
94+
Every integration would have to listen to this hook and apply its logic to spans.
9595
SDKs need to add a subscriber to the hook everywhere where they currently add an event processor.
9696
- Pro: Clear separation and semantics
9797
- Pro: Easy to implement and maintain

0 commit comments

Comments
 (0)