Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
8e67f73
Refactored EnvironmentVariables to be testable.
AlexeyKuznetsov-DD Sep 20, 2025
23f1998
adding supported-configurations.json file
mhlidd Sep 18, 2025
bdc2fd1
removing extra supported-configurations.json
mhlidd Sep 23, 2025
989e7af
migrating config-utils tests and ConfigInversionMetric telemetry
mhlidd Sep 18, 2025
ef8358d
config inversion init
mhlidd Sep 15, 2025
1398121
migrating config-utils tests
mhlidd Sep 15, 2025
0e7eab3
undo move of test files that rely on inject*config
mhlidd Sep 16, 2025
3760b21
responding to PR comments
mhlidd Sep 19, 2025
16dcf77
updating class coverage exclude
mhlidd Sep 19, 2025
b8eeb17
cleanup and code coverage
mhlidd Sep 25, 2025
f0aef0c
init migration
mhlidd Sep 25, 2025
d33b091
creating noop implementation of ConfigInversionMetricCollector
mhlidd Sep 30, 2025
34d33ca
adding Noop implementation to exclude code coverage
mhlidd Sep 30, 2025
79fa0e2
adding to bootstrap classpath for testing
mhlidd Sep 30, 2025
a1cd8de
bugfixes
mhlidd Sep 30, 2025
2e776be
adding more configurations to supported-configurations and updating n…
mhlidd Oct 1, 2025
322f5ad
fix native build and update telemetry test with clear error message
mhlidd Oct 1, 2025
58046e2
PR comments
mhlidd Oct 3, 2025
a15efd0
removing explicit dependency on environment component
mhlidd Oct 3, 2025
dc61df4
responding to PR comments
mhlidd Oct 6, 2025
88713ee
updating native loading
mhlidd Oct 20, 2025
5614945
Merge branch 'master' into mhlidd/migrate_to_config_helper
mhlidd Oct 21, 2025
a75b2e5
updating failing tests
mhlidd Oct 21, 2025
04095ac
Merge branch 'master' into mhlidd/migrate_to_config_helper
mhlidd Oct 21, 2025
6167246
updating memory for native build
mhlidd Oct 21, 2025
43c7d2e
adding documentation for failing tests
mhlidd Oct 21, 2025
0c6e8c3
increasing memory
mhlidd Oct 21, 2025
b5205bf
reverting gradle memory
mhlidd Oct 21, 2025
e070d08
cleanup
mhlidd Oct 22, 2025
f6c59b4
Merge branch 'master' into mhlidd/migrate_to_config_helper
mhlidd Oct 22, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,9 @@ private fun registerCheckEnvironmentVariablesUsage(project: Project) {
val javaFiles = project.fileTree(project.projectDir) {
include("**/src/main/java/**/*.java")
exclude("**/build/**")
exclude("internal-api/src/main/java/datadog/trace/api/ConfigHelper.java")
exclude("utils/config-utils/src/main/java/datadog/trace/config/inversion/ConfigHelper.java")
exclude("dd-java-agent/agent-bootstrap/**")
exclude("dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java")
exclude("dd-java-agent/src/main/java/datadog/trace/bootstrap/**")
}

val pattern = Regex("""EnvironmentVariables\.get\s*\(""")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import static java.util.Collections.emptyMap;
import static java.util.Collections.unmodifiableMap;

import de.thetaphi.forbiddenapis.SuppressForbidden;
import java.util.HashMap;
import java.util.Map;
import javax.annotation.Nullable;
Expand All @@ -17,10 +18,15 @@ public final class EnvironmentVariables {
private EnvironmentVariables() {}

public static class EnvironmentVariablesProvider {

// Environment Component has SecurityException handling, so it is safe to call System.getenv
// here
@SuppressForbidden
public String get(String name) {
return System.getenv(name);
}

@SuppressForbidden
public Map<String, String> getAll() {
return System.getenv();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ public final class Constants {
"datadog.appsec.api",
"datadog.trace.api",
"datadog.trace.bootstrap",
"datadog.trace.config.inversion",
"datadog.trace.context",
"datadog.trace.instrumentation.api",
"datadog.trace.logging",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ abstract class CiVisibilitySmokeTest extends Specification {
protected verifyEventsAndCoverages(String projectName, String toolchain, String toolchainVersion, List<Map<String, Object>> events, List<Map<String, Object>> coverages, List<String> additionalDynamicTags = []) {
def additionalReplacements = ["content.meta.['test.toolchain']": "$toolchain:$toolchainVersion"]

if (System.getenv().get("GENERATE_TEST_FIXTURES") != null) {
if (System.getenv("GENERATE_TEST_FIXTURES") != null) {
def baseTemplatesPath = CiVisibilitySmokeTest.classLoader.getResource(projectName).toURI().schemeSpecificPart.replace('build/resources/test', 'src/test/resources')
CiVisibilityTestUtils.generateTemplates(baseTemplatesPath, events, coverages, additionalReplacements.keySet() + additionalDynamicTags, SMOKE_IGNORED_TAGS)
} else {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package datadog.trace.logging.ddlogger;

import datadog.environment.EnvironmentVariables;
import datadog.environment.SystemProperties;
import datadog.trace.api.Platform;
import datadog.trace.config.inversion.ConfigHelper;
import datadog.trace.logging.LogLevel;
import datadog.trace.logging.LogLevelSwitcher;
import datadog.trace.logging.LoggerHelper;
Expand Down Expand Up @@ -108,7 +108,7 @@ private static boolean isFlagEnabled(
if ("false".equalsIgnoreCase(value)) {
return false;
}
value = EnvironmentVariables.get(envVar);
value = ConfigHelper.env(envVar);
if ("true".equalsIgnoreCase(value)) {
return true;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ public void launcherSessionOpened(LauncherSession session) {
"datadog.appsec.api",
"datadog.trace.api",
"datadog.trace.bootstrap",
"datadog.trace.config.inversion",
"datadog.trace.context",
"datadog.trace.instrumentation.api",
"datadog.trace.logging",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@
import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;
import com.google.auto.service.AutoService;
import datadog.environment.EnvironmentVariables;
import datadog.trace.agent.tooling.Instrumenter;
import datadog.trace.agent.tooling.InstrumenterModule;
import datadog.trace.bootstrap.CallDepthThreadLocalMap;
import datadog.trace.bootstrap.instrumentation.api.AgentScope;
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
import datadog.trace.bootstrap.instrumentation.api.AgentTracer;
import datadog.trace.config.inversion.ConfigHelper;
import net.bytebuddy.asm.Advice;
import net.bytebuddy.description.type.TypeDescription;
import net.bytebuddy.matcher.ElementMatcher;
Expand Down Expand Up @@ -61,7 +61,7 @@ public String[] helperClassNames() {

@Override
protected boolean defaultEnabled() {
return EnvironmentVariables.get(HANDLER_ENV_NAME) != null;
return ConfigHelper.env(HANDLER_ENV_NAME) != null;
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -102,8 +102,10 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[
+ "datadog.trace.api.ResolverCacheConfig$5:build_time,"
+ "datadog.trace.api.TracePropagationStyle:build_time,"
+ "datadog.trace.api.TracePropagationBehaviorExtract:build_time,"
+ "datadog.trace.api.telemetry.OtelEnvMetricCollectorImpl:build_time,"
+ "datadog.trace.api.telemetry.ConfigInversionMetricCollectorProvider:rerun,"
+ "datadog.trace.api.telemetry.ConfigInversionMetricCollectorImpl:build_time,"
+ "datadog.trace.api.telemetry.ConfigInversionMetricCollectorImpl$ConfigInversionMetric:build_time,"
+ "datadog.trace.api.telemetry.OtelEnvMetricCollectorImpl:build_time,"
+ "datadog.trace.api.profiling.ProfilingEnablement:build_time,"
+ "datadog.trace.bootstrap.config.provider.ConfigConverter:build_time,"
+ "datadog.trace.bootstrap.config.provider.ConfigConverter$ValueOfLookup:build_time,"
Expand Down Expand Up @@ -140,6 +142,9 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[
+ "datadog.trace.bootstrap.instrumentation.jfr.backpressure.BackpressureSampleEvent:build_time,"
+ "datadog.trace.bootstrap.instrumentation.jfr.directallocation.DirectAllocationTotalEvent:build_time,"
+ "datadog.trace.bootstrap.WeakMapContextStore:build_time,"
+ "datadog.trace.config.inversion.ConfigHelper:rerun,"
+ "datadog.trace.config.inversion.ConfigHelper$StrictnessPolicy:rerun,"
+ "datadog.trace.config.inversion.GeneratedSupportedConfigurations:rerun,"
+ "datadog.trace.instrumentation.guava10.GuavaAsyncResultExtension:build_time,"
+ "datadog.trace.instrumentation.reactivestreams.ReactiveStreamsAsyncResultExtension:build_time,"
+ "datadog.trace.instrumentation.reactor.core.ReactorAsyncResultExtension:build_time,"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package datadog.trace.instrumentation.maven3;

import datadog.environment.EnvironmentVariables;
import datadog.trace.api.civisibility.domain.JavaAgent;
import datadog.trace.config.inversion.ConfigHelper;
import datadog.trace.util.MethodHandles;
import datadog.trace.util.Strings;
import de.thetaphi.forbiddenapis.SuppressForbidden;
Expand Down Expand Up @@ -66,7 +66,7 @@ public abstract class MavenUtils {
* of the request object
*/
public static String getCommandLine(MavenSession session) {
String mavenCmdLineArgsEnvVar = EnvironmentVariables.get(MAVEN_CMD_LINE_ARGS_ENVIRONMENT_VAR);
String mavenCmdLineArgsEnvVar = ConfigHelper.env(MAVEN_CMD_LINE_ARGS_ENVIRONMENT_VAR);
if (mavenCmdLineArgsEnvVar != null) {
return MVN_CMD_LINE_INVOCATION + mavenCmdLineArgsEnvVar;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,9 @@ private static boolean compatible() {
}

// Reachable for testing
// System.getenv usage is necessary since class is designed to be Java 6 compatible, while
// Environment component is for Java 8+
@SuppressForbidden
static boolean compatible(String javaVersion, String javaHome, PrintStream output) {
int majorJavaVersion = parseJavaMajorVersion(javaVersion);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ if (hasProperty('agentPath')) {
if (withProfiler && property('profiler') == 'true') {
buildArgs.add("-J-Ddd.profiling.enabled=true")
}
jvmArgs.add("-Xmx3072M")
jvmArgs.add("-Xmx4096M")
}
}
}
Expand Down
5 changes: 5 additions & 0 deletions gradle/forbiddenApiFilters/main.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,11 @@ net.bytebuddy.matcher.ElementMatchers#isAbstract()
java.lang.System#out
java.lang.System#err

# use ConfigHelper to access environment variables instead of using System.getenv() or System.getenv(String)
@defaultMessage Use ConfigHelper to access environment variables instead of using System.getenv() or System.getenv(String)
java.lang.System#getenv()
java.lang.System#getenv(java.lang.String)

#Use jdk LongAdder
@defaultMessage use LongAdder instead of the legacy jctools FixedSizeStripedLongCounter
org.jctools.counters.FixedSizeStripedLongCounter
4 changes: 2 additions & 2 deletions internal-api/src/main/java/datadog/trace/api/Config.java
Original file line number Diff line number Diff line change
Expand Up @@ -654,7 +654,6 @@
import static datadog.trace.util.CollectionUtils.tryMakeImmutableSet;
import static datadog.trace.util.ConfigStrings.propertyNameToEnvironmentVariableName;

import datadog.environment.EnvironmentVariables;
import datadog.environment.JavaVirtualMachine;
import datadog.environment.OperatingSystem;
import datadog.environment.SystemProperties;
Expand All @@ -678,6 +677,7 @@
import datadog.trace.bootstrap.config.provider.ConfigProvider;
import datadog.trace.bootstrap.config.provider.SystemPropertiesConfigSource;
import datadog.trace.bootstrap.instrumentation.api.AgentTracer;
import datadog.trace.config.inversion.ConfigHelper;
import datadog.trace.context.TraceScope;
import datadog.trace.util.ConfigStrings;
import datadog.trace.util.PidHelper;
Expand Down Expand Up @@ -5386,7 +5386,7 @@ private static boolean isWindowsOS() {
}

private static String getEnv(String name) {
String value = EnvironmentVariables.get(name);
String value = ConfigHelper.env(name);
if (value != null) {
// Report non-default sequence id for consistency
ConfigCollector.get().put(name, value, ConfigOrigin.ENV, NON_DEFAULT_SEQ_ID);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package datadog.trace.util;

import datadog.environment.EnvironmentVariables;
import datadog.environment.JavaVirtualMachine;
import datadog.environment.OperatingSystem;
import datadog.environment.SystemProperties;
import datadog.trace.config.inversion.ConfigHelper;
import de.thetaphi.forbiddenapis.SuppressForbidden;
import java.io.IOException;
import java.lang.management.ManagementFactory;
Expand Down Expand Up @@ -80,13 +80,13 @@ private static String getTempDir() {
return "/tmp";
} else if (OperatingSystem.isWindows()) {
return Stream.of("TMP", "TEMP", "USERPROFILE")
.map(EnvironmentVariables::get)
.map(ConfigHelper::env)
.filter(Objects::nonNull)
.filter(((Predicate<String>) String::isEmpty).negate())
.findFirst()
.orElse("C:\\Windows");
} else if (OperatingSystem.isMacOs()) {
return EnvironmentVariables.get("TMPDIR");
return ConfigHelper.env("TMPDIR");
} else {
return SystemProperties.get("java.io.tmpdir");
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package datadog.trace.util;

import datadog.environment.EnvironmentVariables;
import datadog.environment.SystemProperties;
import datadog.trace.api.config.ProfilingConfig;
import datadog.trace.api.profiling.ProfilerFlareLogger;
import datadog.trace.bootstrap.config.provider.ConfigProvider;
import datadog.trace.config.inversion.ConfigHelper;
import java.io.IOException;
import java.nio.file.FileSystems;
import java.nio.file.FileVisitResult;
Expand Down Expand Up @@ -300,7 +300,7 @@ private TempLocationManager() {
static String getBaseTempDirName() {
String userName = SystemProperties.get("user.name");
// unlikely, but fall-back to system env based user name
userName = userName == null ? EnvironmentVariables.get("USER") : userName;
userName = userName == null ? ConfigHelper.env("USER") : userName;
// make sure we do not have any illegal characters in the user name
userName =
userName != null ? userName.replace('.', '_').replace('/', '_').replace(' ', '_') : null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,19 @@ class ConfigInversionMetricCollectorImplTest extends DDSpecification {
def collector = ConfigInversionMetricCollectorImpl.getInstance()

when:
ConfigInversionMetricCollectorTestHelper.checkAndEmitUnsupported("DD_UNKNOWN_FEATURE")
ConfigInversionMetricCollectorTestHelper.checkAndEmitUnsupported("FAKE_ENV_VAR")
collector.prepareMetrics()
def metrics = collector.drain()

then:
metrics.size() == 1
assert metrics.size() == 1 : "The following Environment Variables need to be added to metadata/supported-configurations.json.: ${metrics}\nSee https://datadoghq.atlassian.net/wiki/spaces/APMINT/pages/5372248222/APM+-+Centralized+Configuration+Config+inversion#dd-trace-java"
def metric = metrics[0]
metric.type == 'count'
metric.value == 1
metric.namespace == 'tracers'
metric.metricName == CONFIG_INVERSION_METRIC_NAME
metric.tags.size() == 1
metric.tags[0] == 'config_name:DD_UNKNOWN_FEATURE'
metric.tags[0] == 'config_name:FAKE_ENV_VAR'
}

def "should not emit metric when supported env var is used"() {
Expand All @@ -36,6 +36,6 @@ class ConfigInversionMetricCollectorImplTest extends DDSpecification {
def metrics = collector.drain()

then:
metrics.isEmpty()
assert metrics.isEmpty() : "The following Environment Variables need to be added to metadata/supported-configurations.json: ${metrics}"
}
}
22 changes: 22 additions & 0 deletions metadata/supported-configurations.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,18 @@
"DD_AGENTLESS_LOG_SUBMISSION_URL": ["A"],
"DD_AGENT_HOST": ["A"],
"DD_AGENT_PORT": ["A"],
"DD_AI_GUARD_ENABLED": ["A"],
"DD_AI_GUARD_ENDPOINT": ["A"],
"DD_AI_GUARD_MAX_CONTENT_SIZE": ["A"],
"DD_AI_GUARD_MAX_MESSAGES_LENGTH": ["A"],
"DD_AI_GUARD_TIMEOUT": ["A"],
"DD_API_KEY": ["A"],
"DD_API_KEY_FILE": ["A"],
"DD_API_SECURITY_DOWNSTREAM_REQUEST_ANALYSIS_SAMPLE_RATE": ["A"],
"DD_API_SECURITY_ENABLED": ["A"],
"DD_API_SECURITY_ENDPOINT_COLLECTION_ENABLED": ["A"],
"DD_API_SECURITY_ENDPOINT_COLLECTION_MESSAGE_LIMIT": ["A"],
"DD_API_SECURITY_MAX_DOWNSTREAM_REQUEST_BODY_ANALYSIS": ["A"],
"DD_API_SECURITY_SAMPLE_DELAY": ["A"],
"DD_APM_TRACING_ENABLED": ["A"],
"DD_APPLICATION_KEY": ["A"],
Expand All @@ -22,6 +29,7 @@
"DD_APP_CUSTOMJMXBUILDER": ["A"],
"DD_APPSEC_AUTOMATED_USER_EVENTS_TRACKING": ["A"],
"DD_APPSEC_AUTO_USER_INSTRUMENTATION_MODE": ["A"],
"DD_APPSEC_BODY_PARSING_SIZE_LIMIT": ["A"],
"DD_APPSEC_COLLECT_ALL_HEADERS": ["A"],
"DD_APPSEC_ENABLED": ["A"],
"DD_APPSEC_HEADER_COLLECTION_REDACTION_ENABLED": ["A"],
Expand Down Expand Up @@ -63,6 +71,7 @@
"DD_CIVISIBILITY_CODE_COVERAGE_INCLUDES": ["A"],
"DD_CIVISIBILITY_CODE_COVERAGE_LINES_ENABLED": ["A"],
"DD_CIVISIBILITY_CODE_COVERAGE_REPORT_DUMP_DIR": ["A"],
"DD_CIVISIBILITY_CODE_COVERAGE_REPORT_UPLOAD_ENABLED": ["A"],
"DD_CIVISIBILITY_CODE_COVERAGE_ROOT_PACKAGES_LIMIT": ["A"],
"DD_CIVISIBILITY_COMPILER_PLUGIN_AUTO_CONFIGURATION_ENABLED": ["A"],
"DD_CIVISIBILITY_COMPILER_PLUGIN_VERSION": ["A"],
Expand All @@ -84,6 +93,7 @@
"DD_CIVISIBILITY_GRADLE_SOURCESETS": ["A"],
"DD_CIVISIBILITY_IMPACTED_TESTS_DETECTION_ENABLED": ["A"],
"DD_CIVISIBILITY_INJECTED_TRACER_VERSION": ["A"],
"DD_CIVISIBILITY_INTAKE_AGENTLESS_URL": ["A"],
"DD_CIVISIBILITY_ITR_ENABLED": ["A"],
"DD_CIVISIBILITY_JACOCO_PLUGIN_VERSION": ["A"],
"DD_CIVISIBILITY_JVM_INFO_CACHE_SIZE": ["A"],
Expand Down Expand Up @@ -125,8 +135,10 @@
"DD_DATA_JOBS_COMMAND_PATTERN": ["A"],
"DD_DATA_JOBS_ENABLED": ["A"],
"DD_DATA_JOBS_OPENLINEAGE_ENABLED": ["A"],
"DD_DATA_JOBS_OPENLINEAGE_TIMEOUT_ENABLED": ["A"],
"DD_DATA_STREAMS_BUCKET_DURATION_SECONDS": ["A"],
"DD_DATA_STREAMS_ENABLED": ["A"],
"DD_DBM_INJECT_SQL_BASEHASH": ["A"],
"DD_DBM_PROPAGATION_MODE": ["A"],
"DD_DBM_TRACE_PREPARED_STATEMENTS": ["A"],
"DD_DISTRIBUTED_DEBUGGER_ENABLED": ["A"],
Expand Down Expand Up @@ -169,6 +181,7 @@
"DD_EXPERIMENTAL_API_SECURITY_ENABLED": ["A"],
"DD_EXPERIMENTAL_DEFER_INTEGRATIONS_UNTIL": ["A"],
"DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED": ["A"],
"DD_FORCE_CLEAR_TEXT_HTTP_FOR_INTAKE_CLIENT": ["A"],
"DD_GIT_BRANCH": ["A"],
"DD_GIT_COMMIT_AUTHOR_DATE": ["A"],
"DD_GIT_COMMIT_AUTHOR_EMAIL": ["A"],
Expand Down Expand Up @@ -394,6 +407,8 @@
"DD_REMOTE_CONFIG_MAX_PAYLOAD_SIZE": ["A"],
"DD_REMOTE_CONFIG_POLL_INTERVAL_SECONDS": ["A"],
"DD_REMOTE_CONFIG_URL": ["A"],
"DD_RESILIENCE4J_MEASURED_ENABLED": ["A"],
"DD_RESILIENCE4J_TAG_METRICS_ENABLED": ["A"],
"DD_RESOLVER_CACHE_CONFIG": ["A"],
"DD_RESOLVER_CACHE_DIR": ["A"],
"DD_RESOLVER_NAMES_ARE_UNIQUE": ["A"],
Expand Down Expand Up @@ -438,6 +453,8 @@
"DD_SYMBOL_DATABASE_FLUSH_THRESHOLD": ["A"],
"DD_SYMBOL_DATABASE_UPLOAD_ENABLED": ["A"],
"DD_TAGS": ["A"],
"DD_TAG_NAME_UTF8_CACHE_SIZE": ["A"],
"DD_TAG_VALUE_UTF8_CACHE_SIZE": ["A"],
"DD_TELEMETRY_DEBUG_REQUESTS_ENABLED": ["A"],
"DD_TELEMETRY_DEPENDENCY_COLLECTION_ENABLED": ["A"],
"DD_TELEMETRY_DEPENDENCY_RESOLUTION_PERIOD_MILLIS": ["A"],
Expand All @@ -449,6 +466,7 @@
"DD_TELEMETRY_LOG_COLLECTION_ENABLED": ["A"],
"DD_TELEMETRY_METRICS_ENABLED": ["A"],
"DD_TELEMETRY_METRICS_INTERVAL": ["A"],
"DD_TEST_FAILED_TEST_REPLAY_ENABLED": ["A"],
"DD_TEST_MANAGEMENT_ATTEMPT_TO_FIX_RETRIES": ["A"],
"DD_TEST_MANAGEMENT_ENABLED": ["A"],
"DD_TEST_SESSION_NAME": ["A"],
Expand Down Expand Up @@ -634,6 +652,7 @@
"DD_TRACE_EXECUTORS": ["A"],
"DD_TRACE_EXECUTORS_ALL": ["A"],
"DD_TRACE_EXPERIMENTAL_FEATURES_ENABLED": ["A"],
"DD_TRACE_EXPERIMENTAL_JDBC_POOL_WAITING_ENABLED": ["A"],
"DD_TRACE_EXPERIMENTAL_JEE_SPLIT_BY_DEPLOYMENT": ["A"],
"DD_TRACE_EXPERIMENTAL_KEEP_LATENCY_THRESHOLD_MS": ["A"],
"DD_TRACE_EXPERIMENTAL_LONG_RUNNING_ENABLED": ["A"],
Expand Down Expand Up @@ -745,6 +764,7 @@
"DD_TRACE_IGNITE_ANALYTICS_ENABLED": ["A"],
"DD_TRACE_IGNITE_ANALYTICS_SAMPLE_RATE": ["A"],
"DD_TRACE_IGNITE_ENABLED": ["A"],
"DD_TRACE_INFERRED_PROXY_SERVICES_ENABLED": ["A"],
"DD_TRACE_INPUTSTREAM_ENABLED": ["A"],
"DD_TRACE_INTEGRATION_DATANUCLEUS_MATCHING_SHORTCUT_ENABLED": ["A"],
"DD_TRACE_INTEGRATION_DROPWIZARD_MATCHING_SHORTCUT_ENABLED": ["A"],
Expand Down Expand Up @@ -1112,6 +1132,7 @@
"DD_TRACE_SELENIUM_ENABLED": ["B"],
"DD_TRACE_SERIALVERSIONUID_FIELD_INJECTION": ["A"],
"DD_TRACE_SERVELET_RESPONSE_ENABLED": ["A"],
"DD_TRACE_SERVICE_DISCOVERY_ENABLED": ["A"],
"DD_TRACE_SERVICENAMETAGINTERCEPTOR_ENABLED": ["A"],
"DD_TRACE_SERVICETALK_CONCURRENT_ENABLED": ["A"],
"DD_TRACE_SERVICETALK_ENABLED": ["A"],
Expand Down Expand Up @@ -1336,6 +1357,7 @@
"OTEL_TRACES_SAMPLER": ["A"]
},
"aliases": {
"DD_APPLICATION_KEY": ["DD_APP_KEY"],
"DD_PROFILING_ASYNC_LIVEHEAP_CAPACITY": ["DD_PROFILING_DDPROF_MEMLEAK_CAPACITY"],
"DD_PROFILING_ASYNC_LIVEHEAP_INTERVAL": ["DD_PROFILING_DDPROF_MEMLEAK_INTERVAL"],
"DD_PROFILING_STACKDEPTH": ["DD_PROFILING_DDPROF_STACKDEPTH"],
Expand Down
Loading