Skip to content

Commit 302d472

Browse files
committed
Add min_cold_start_trace_duration.
1 parent 6a864c4 commit 302d472

File tree

3 files changed

+14
-8
lines changed

3 files changed

+14
-8
lines changed

datadog_lambda/config.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,13 @@ class Config:
4242
service = _get_env("DD_SERVICE")
4343
env = _get_env("DD_ENV")
4444

45-
add_span_pointers = _get_env("DD_BOTOCORE_ADD_SPAN_POINTERS", "true", as_bool)
4645
cold_start_tracing = _get_env("DD_COLD_START_TRACING", "true", as_bool)
46+
min_cold_start_trace_duration = _get_env("DD_MIN_COLD_START_DURATION", 3, int)
47+
48+
capture_payload_max_depth = _get_env("DD_CAPTURE_LAMBDA_PAYLOAD_MAX_DEPTH", 10, int)
49+
capture_payload_enabled = _get_env("DD_CAPTURE_LAMBDA_PAYLOAD", "false", as_bool)
50+
51+
add_span_pointers = _get_env("DD_BOTOCORE_ADD_SPAN_POINTERS", "true", as_bool)
4752
enhanced_metrics_enabled = _get_env("DD_ENHANCED_METRICS", "true", as_bool)
4853
flush_in_thread = _get_env("DD_FLUSH_IN_THREAD", "false", as_bool)
4954
flush_to_log = _get_env("DD_FLUSH_TO_LOG", "false", as_bool)
@@ -59,8 +64,6 @@ class Config:
5964
trace_enabled = _get_env("DD_TRACE_ENABLED", "true", as_bool)
6065
merge_xray_traces = _get_env("DD_MERGE_XRAY_TRACES", "false", as_bool)
6166
trace_extractor = _get_env("DD_TRACE_EXTRACTOR")
62-
capture_payload_max_depth = _get_env("DD_CAPTURE_LAMBDA_PAYLOAD_MAX_DEPTH", 10, int)
63-
capture_payload_enabled = _get_env("DD_CAPTURE_LAMBDA_PAYLOAD", "false", as_bool)
6467
profiling_enabled = _get_env("DD_PROFILING_ENABLED", "false", as_bool)
6568
llmobs_enabled = _get_env("DD_LLMOBS_ENABLED", "false", as_bool)
6669
exception_replay_enabled = _get_env("DD_EXCEPTION_REPLAY_ENABLED", "false", as_bool)

datadog_lambda/wrapper.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@
6161
DD_ENCODE_AUTHORIZER_CONTEXT = "DD_ENCODE_AUTHORIZER_CONTEXT"
6262
DD_DECODE_AUTHORIZER_CONTEXT = "DD_DECODE_AUTHORIZER_CONTEXT"
6363
DD_COLD_START_TRACING = "DD_COLD_START_TRACING"
64-
DD_MIN_COLD_START_DURATION = "DD_MIN_COLD_START_DURATION"
6564
DD_COLD_START_TRACE_SKIP_LIB = "DD_COLD_START_TRACE_SKIP_LIB"
6665
DD_REQUESTS_SERVICE_NAME = "DD_REQUESTS_SERVICE_NAME"
6766
DD_SERVICE = "DD_SERVICE"
@@ -151,9 +150,6 @@ def __init__(self, func):
151150
self.cold_start_tracing = depends_on_dd_tracing_enabled(
152151
os.environ.get(DD_COLD_START_TRACING, "true").lower() == "true"
153152
)
154-
self.min_cold_start_trace_duration = get_env_as_int(
155-
DD_MIN_COLD_START_DURATION, 3
156-
)
157153
self.local_testing_mode = os.environ.get(
158154
DD_LOCAL_TEST, "false"
159155
).lower() in ("true", "1")
@@ -351,7 +347,7 @@ def _after(self, event, context):
351347
config.function_name,
352348
following_span.start_ns,
353349
trace_ctx,
354-
self.min_cold_start_trace_duration,
350+
config.min_cold_start_trace_duration,
355351
self.cold_start_trace_skip_lib,
356352
).trace()
357353
except Exception as e:

tests/test_config.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,13 @@ def set_env(key, value):
176176
("DD_CAPTURE_LAMBDA_PAYLOAD", "capture_payload_enabled", "1", True), # CHANGED
177177
("DD_CAPTURE_LAMBDA_PAYLOAD", "capture_payload_enabled", "0", False),
178178
("DD_CAPTURE_LAMBDA_PAYLOAD", "capture_payload_enabled", "purple", False),
179+
("DD_MIN_COLD_START_DURATION", "min_cold_start_trace_duration", None, 3),
180+
("DD_MIN_COLD_START_DURATION", "min_cold_start_trace_duration", "", 3),
181+
("DD_MIN_COLD_START_DURATION", "min_cold_start_trace_duration", "5", 5),
182+
("DD_MIN_COLD_START_DURATION", "min_cold_start_trace_duration", "0", 0),
183+
("DD_MIN_COLD_START_DURATION", "min_cold_start_trace_duration", "2.5", 3),
184+
("DD_MIN_COLD_START_DURATION", "min_cold_start_trace_duration", "-1", -1),
185+
("DD_MIN_COLD_START_DURATION", "min_cold_start_trace_duration", "purple", 3),
179186
)
180187

181188

0 commit comments

Comments
 (0)