Skip to content

[core] more improvements#3

Merged
palazzem merged 13 commits into
masterfrom
palazzem/core-improvements
Sep 21, 2016
Merged

[core] more improvements#3
palazzem merged 13 commits into
masterfrom
palazzem/core-improvements

Conversation

@palazzem

Copy link
Copy Markdown
Contributor

No description provided.

Comment thread tracer/tracer.go Outdated

// child that is correctly configured
return newSpan(name, parent.Service, parent.Resource, spanID, parent.TraceID, parent.SpanID, parent.tracer)
return newSpan(name, parent.Service, "", spanID, parent.TraceID, parent.SpanID, parent.tracer)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i think this should default to the name not empty (ti won't work if it's empty)

Comment thread tracer/tracer.go Outdated
if parent == nil {
// TODO[manu]: maybe pass a kind of DevNullTracer instead of nil
return newSpan(name, "", "", spanID, spanID, spanID, nil)
return newSpan(name, "", "", spanID, spanID, spanID, t)

@palazzem palazzem Sep 16, 2016

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@clutchski what about this? to be specular I should put the name in the resource argument... but for the service?

Comment thread tracer/encoder.go Outdated

select {
case encoder = <-p.pool:
log.Println("[POOL] Reusing the encoder")

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe here we're logging too much

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yea i think so.

Comment thread tracer/span.go
if s.Name != "" && s.Service != "" && s.Resource != "" {
s.tracer.record(s)
}
s.tracer.record(s)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The tracer knows if the span must be discarded or not. Moved in tracer.record

@palazzem
palazzem merged commit e8469f8 into master Sep 21, 2016
@palazzem
palazzem deleted the palazzem/core-improvements branch September 21, 2016 22:20
jdgordon pushed a commit to jdgordon/dd-trace-go that referenced this pull request May 31, 2022
leoromanovsky added a commit that referenced this pull request Jun 12, 2026
… EVP flagevaluation contract

- #1 (blocker): route globalCap overflow to ultra-degraded instead of dropping; count total preserved at every tier
- #3: add TestSaturationCountPreservation (total counts == add() calls past both globalCap and perFlagCap)
- #2: correct collision-safe wording to low-collision/not collision-proof; document count-preserving collision behavior
- #4: rotate flag keys + distinct context field names in benchmark so real cardinality is exercised
leoromanovsky added a commit that referenced this pull request Jun 12, 2026
…ook-fire time (review #3)

Capture the evaluation timestamp once at DatadogProvider.evaluate entry, thread it into
evaluateFlag (reusing the time.Now() the evaluator already computes for allocation windows),
and stamp it into FlagMetadata on every return path. The EVP flagevaluation hook reads it for
first/last_evaluation bounds instead of calling time.Now() at hook-fire time (slightly later
and slightly incorrect). Falls back to hook-fire time when absent (non-Datadog provider).
flageval_metrics.go untouched.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants