Skip to content

Commit e6c42de

Browse files
committed
feat(config): enable telemetry when SCA is on independently from appsec
1 parent 1fac67c commit e6c42de

File tree

4 files changed

+11
-25
lines changed

4 files changed

+11
-25
lines changed

datadog_lambda/__init__.py

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,4 @@
11
from datadog_lambda.cold_start import initialize_cold_start_tracing
2-
import os
3-
4-
5-
if os.environ.get("DD_INSTRUMENTATION_TELEMETRY_ENABLED") is None:
6-
# Telemetry is required for Appsec Software Composition Analysis
7-
os.environ["DD_INSTRUMENTATION_TELEMETRY_ENABLED"] = os.environ.get(
8-
"DD_APPSEC_ENABLED", "false"
9-
)
102

113

124
initialize_cold_start_tracing()

datadog_lambda/config.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,6 @@ def _resolve_env(self, key, default=None, cast=None, depends_on_tracing=False):
8282
logs_injection = _get_env("DD_LOGS_INJECTION", "true", as_bool)
8383
merge_xray_traces = _get_env("DD_MERGE_XRAY_TRACES", "false", as_bool)
8484

85-
telemetry_enabled = _get_env(
86-
"DD_INSTRUMENTATION_TELEMETRY_ENABLED",
87-
"false",
88-
as_bool,
89-
depends_on_tracing=True,
90-
)
9185
otel_enabled = _get_env("DD_TRACE_OTEL_ENABLED", "false", as_bool)
9286
profiling_enabled = _get_env("DD_PROFILING_ENABLED", "false", as_bool)
9387
llmobs_enabled = _get_env("DD_LLMOBS_ENABLED", "false", as_bool)
@@ -96,6 +90,7 @@ def _resolve_env(self, key, default=None, cast=None, depends_on_tracing=False):
9690
"DD_DATA_STREAMS_ENABLED", "false", as_bool, depends_on_tracing=True
9791
)
9892
appsec_enabled = _get_env("DD_APPSEC_ENABLED", "false", as_bool)
93+
sca_enabled = _get_env("DD_APPSEC_SCA_ENABLED", "false", as_bool)
9994

10095
is_gov_region = _get_env("AWS_REGION", "", lambda x: x.startswith("us-gov-"))
10196

@@ -144,3 +139,11 @@ def _reset(self):
144139
"Python Lambda Layer FIPS mode is %s.",
145140
"enabled" if config.fips_mode_enabled else "not enabled",
146141
)
142+
143+
144+
if (
145+
"DD_INSTRUMENTATION_TELEMETRY_ENABLED" not in os.environ
146+
and not config.sca_enabled
147+
and not config.appsec_enabled
148+
):
149+
os.environ["DD_INSTRUMENTATION_TELEMETRY_ENABLED"] = "false"

datadog_lambda/tracing.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,6 @@
5555
logger = logging.getLogger(__name__)
5656

5757
dd_trace_context = None
58-
if config.telemetry_enabled:
59-
# Enable the telemetry client if the user has opted in
60-
from ddtrace.internal.telemetry import telemetry_writer
61-
62-
telemetry_writer.enable()
6358

6459
propagator = HTTPPropagator()
6560

tests/test_config.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,6 @@ def _test_as_list(env_key, conf_key, default):
7272
*_test_as_bool("DD_INTEGRATION_TEST", "integration_test", default=False),
7373
*_test_as_bool("DD_BOTOCORE_ADD_SPAN_POINTERS", "add_span_pointers", default=True),
7474
*_test_as_bool("DD_TRACE_OTEL_ENABLED", "otel_enabled", default=False),
75-
*_test_as_bool(
76-
"DD_INSTRUMENTATION_TELEMETRY_ENABLED", "telemetry_enabled", default=False
77-
),
7875
*_test_as_bool("DD_MERGE_XRAY_TRACES", "merge_xray_traces", default=False),
7976
*_test_as_bool("DD_PROFILING_ENABLED", "profiling_enabled", default=False),
8077
*_test_as_bool("DD_LLMOBS_ENABLED", "llmobs_enabled", default=False),
@@ -86,6 +83,8 @@ def _test_as_list(env_key, conf_key, default):
8683
),
8784
*_test_as_bool("DD_LOCAL_TEST", "local_test", default=False),
8885
*_test_as_bool("DD_DATA_STREAMS_ENABLED", "data_streams_enabled", default=False),
86+
*_test_as_bool("DD_APPSEC_ENABLED", "appsec_enabled", default=False),
87+
*_test_as_bool("DD_APPSEC_SCA_ENABLED", "sca_enabled", default=False),
8988
*_test_int(
9089
"DD_CAPTURE_LAMBDA_PAYLOAD_MAX_DEPTH", "capture_payload_max_depth", default=10
9190
),
@@ -143,9 +142,6 @@ def test_config_from_environ(env_key, conf_key, env_val, conf_val, setenv):
143142
"DD_DECODE_AUTHORIZER_CONTEXT", "decode_authorizer_context", default=True
144143
),
145144
*_test_as_bool("DD_DATA_STREAMS_ENABLED", "data_streams_enabled", default=False),
146-
*_test_as_bool(
147-
"DD_INSTRUMENTATION_TELEMETRY_ENABLED", "telemetry_enabled", default=False
148-
),
149145
)
150146

151147

0 commit comments

Comments
 (0)