Skip to content

Commit 807e89a

Browse files
committed
test changes
1 parent 6586968 commit 807e89a

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

internal/trace/listener.go

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,25 +55,36 @@ var tracerInitialized = false
5555

5656
// MakeListener initializes a new trace lambda Listener
5757
func MakeListener(config Config, extensionManager *extension.ExtensionManager) Listener {
58+
fmt.Printf("MakeListener()")
5859
if config.TracerOptions == nil {
5960
config.TracerOptions = []tracer.StartOption{}
6061
}
6162

62-
// Read DD_TRACE_SAMPLING_RULES before initializing tracer
63+
// Read DD_TRACE_SAMPLING_RULES first
64+
fmt.Printf("Trying to get sampling rules env var")
65+
var samplingRules []tracer.SamplingRule
6366
if ruleStr := os.Getenv("DD_TRACE_SAMPLING_RULES"); ruleStr != "" {
67+
fmt.Printf("Env: %s", ruleStr)
6468
var rules []map[string]interface{}
6569
if err := json.Unmarshal([]byte(ruleStr), &rules); err == nil {
66-
// Convert environment rules to tracer.SamplingRule
6770
for _, rule := range rules {
71+
fmt.Printf("Rule: %s", rule)
6872
if rate, ok := rule["sample_rate"].(float64); ok {
69-
samplingRule := tracer.RateRule(rate)
70-
config.TracerOptions = append(config.TracerOptions,
71-
tracer.WithSamplingRules([]tracer.SamplingRule{samplingRule}))
73+
fmt.Printf("Appending sampling rule")
74+
samplingRules = append(samplingRules, tracer.RateRule(rate))
7275
}
7376
}
7477
}
7578
}
7679

80+
// If we have sampling rules from environment, add them first
81+
if len(samplingRules) > 0 {
82+
fmt.Printf("Sample rule found, adding.")
83+
config.TracerOptions = append([]tracer.StartOption{
84+
tracer.WithSamplingRules(samplingRules),
85+
}, config.TracerOptions...)
86+
}
87+
7788
return Listener{
7889
ddTraceEnabled: config.DDTraceEnabled,
7990
mergeXrayTraces: config.MergeXrayTraces,

0 commit comments

Comments
 (0)