Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
165 commits
Select commit Hold shift + click to select a range
f22671f
enable the Stable Config tests for Java; and fix tests
mtoffl01 Mar 18, 2025
b5faba5
Change Test_Stable_Config_Default version from v1.48.0 to v1.48.0-SNA…
mtoffl01 Mar 19, 2025
22af681
Introduce a way to add extra argument to library cmd on parametric sc…
cbeauchesne Apr 3, 2025
4bf740f
disable shellcheck
cbeauchesne Apr 3, 2025
76bcdd0
Support for node and PHP
cbeauchesne Apr 3, 2025
01d38db
Ruby: turn off flakey sampling tests (#4331)
ZStriker19 Mar 18, 2025
d0e1235
[golang] Harden load-binary script (#4332)
cbeauchesne Mar 18, 2025
0439862
Add library cpp_httpd (#4328)
cbeauchesne Mar 18, 2025
788acce
Add env var for span events support (#4259)
marcotc Mar 19, 2025
7522ed8
Activate ANN001 on some utils files (#4335)
cbeauchesne Mar 19, 2025
e843cce
[Nodejs] Update nodejs manifest for truncation metrics (#4263)
IlyasShabi Mar 19, 2025
7111f65
Add new test for waf init failure telemetry tag (#4326)
IlyasShabi Mar 19, 2025
74a8d8f
Slightly better logs for IAST_STANDALONE (#4336)
cbeauchesne Mar 19, 2025
c5d5358
Activate ANN001 on conftest.py, utils/interfaces and scripts files (…
cbeauchesne Mar 19, 2025
5bcec34
[Go] Re-enable Test_Config_HttpClientErrorStatuses_FeatureFlagCustom …
mtoffl01 Mar 19, 2025
fe523de
[Nodejs] Enable corrupted rules telemetry test for nodejs (#4337)
IlyasShabi Mar 19, 2025
3eb5beb
Move logger inside utils (instead of utils.tools) (#4339)
cbeauchesne Mar 19, 2025
d54051c
span events serialization tests nodejs (#4051)
wconti27 Mar 19, 2025
74b44db
[python] remove skips for INPLAT-478 (#4343)
brettlangdon Mar 19, 2025
91f4983
activate ANN201 on utils files in tests folder (#4346)
cbeauchesne Mar 19, 2025
2d54ada
Add order checking to format.sh (#4320)
bm1549 Mar 19, 2025
7cd363e
[Go] Change minimum version for Test_Config_HttpClientErrorStatuses_F…
mtoffl01 Mar 19, 2025
d0cd3b2
Enables existing logs injection tests for the .NET weblog application…
zacharycmontoya Mar 19, 2025
c4b2622
Activate ANN001 on utils in tests folder (#4348)
cbeauchesne Mar 19, 2025
8978acd
Enable updated DD_TAGS test cases for .NET tracing library (#4260)
zacharycmontoya Mar 19, 2025
457b0b7
Change request blocking scenario for ATO (#4308)
Strech Mar 20, 2025
2fcc309
Change runtime activation to AppSec & RC enabled (#4351)
Strech Mar 20, 2025
f580618
onboarding: force the apm instrumentation after install the installer…
robertomonteromiguel Mar 20, 2025
25e7e01
Update tests/telemetry_intake/static (#4353)
smola Mar 20, 2025
ca454c7
[NodeJS] Enable baggage otel support drop in test (#4327)
ida613 Mar 20, 2025
1f89cfb
Add new waf requests mandatory tags (#4354)
IlyasShabi Mar 21, 2025
e0b8b75
[java] Skip test failing for APMAPI-1251 (#4355)
cbeauchesne Mar 21, 2025
8e11a76
Add debugger team telemetry tests (#4246)
tylfin Mar 21, 2025
3d5a2ac
Extend mypy to utils files (#4359)
cbeauchesne Mar 21, 2025
0df68fc
Activate ruff/mypy on tests/debugger folder (#4361)
cbeauchesne Mar 21, 2025
e1876a1
telemetry_configs: add to configurations to telemetry consistency tes…
mabdinur Mar 21, 2025
c9c6cf1
[java] Enable telemetry completeness test (#4357)
bm1549 Mar 21, 2025
4edbf39
Update parametric span events serialization tests (#4323)
marcotc Mar 22, 2025
88b37fd
Fix debugger telemetry scenario (#4364)
cbeauchesne Mar 24, 2025
02bb72a
[java] Enable setUser SDK tests (#4318)
manuel-alvarez-alvarez Mar 24, 2025
b922d00
telemetry-intake: add missing config to configuration tests (#4369)
mabdinur Mar 24, 2025
992ecee
Docker SSI: Bug marker python3.2 (#4367)
robertomonteromiguel Mar 24, 2025
37a884d
[php] Add APIGW Tests (#4321)
zarirhamza Mar 24, 2025
d1de03d
add rasp telemetry v2 (#4365)
IlyasShabi Mar 24, 2025
392af53
[java] Enable telemetry completeness test (#4368)
bm1549 Mar 24, 2025
7ca797b
Create cpp_nginx library (#4371)
cbeauchesne Mar 24, 2025
982b63d
parametric: update reporting for 128bit traceid cpp tests [cpp] (#4375)
mabdinur Mar 24, 2025
0e1f0d8
AWS: retry policy ecr and ghcr rate limits (#4376)
robertomonteromiguel Mar 25, 2025
12808e4
Skip failing sampling test for APMAPI-1252 (#4377)
cbeauchesne Mar 25, 2025
edc1e3d
Remove flaky attribute on test_crash_no_zombie (#4330)
Mar 25, 2025
0d51976
[php] Enable V3 Login events and user tracking tests (#3815)
Leiyks Mar 25, 2025
7029f5c
Activate mypy on tests/appsec folder (#4366)
cbeauchesne Mar 25, 2025
b310bdc
SSI: Clean leftovers (#4373)
robertomonteromiguel Mar 25, 2025
c4f7dd1
Fix appsec truncation object_depth test (#4380)
eliottness Mar 25, 2025
196c785
Rename LibraryVersion to ComponentVersion, and ComponentVersion.libra…
cbeauchesne Mar 25, 2025
6b6f2ff
Update test cases for DD_TRACE_128_BIT_TRACEID_LOGGING_ENABLED config…
zacharycmontoya Mar 25, 2025
72b1337
Activate mypy on some tests folders (#4383)
cbeauchesne Mar 25, 2025
d00400d
Skip failing test for DEBUG-3659 (#4385)
cbeauchesne Mar 26, 2025
4eb86a6
[php] skip DEBUGGER_PII_REDACTION for DEBUG-3661 (#4386)
cbeauchesne Mar 26, 2025
8483b3b
[python] Revert skipping test for DEBUG-3659 (#4389)
cbeauchesne Mar 26, 2025
d8a1c58
[Java] Enable Round 2 Config Consistency system-tests (#4370)
mhlidd Mar 26, 2025
5d32c98
Fix CI orchestrator (#4387)
cbeauchesne Mar 26, 2025
9d4bd1c
Docker SSI: bug marker python (#4390)
robertomonteromiguel Mar 26, 2025
b1c1dd1
Reduce CI time to 30 minutes (#4391)
cbeauchesne Mar 26, 2025
132f97a
Manually add telemetry key third_party_shading_identifiers (#4395)
cbeauchesne Mar 26, 2025
5f8ef94
Manually add some telemetry key (#4396)
cbeauchesne Mar 26, 2025
71adb85
hot fix
cbeauchesne Mar 26, 2025
68ae92b
[python] Skip circular import check for 3.2.1 (#4399)
cbeauchesne Mar 27, 2025
4709a5d
Extend mypy scope (#4404)
cbeauchesne Mar 27, 2025
938081f
[nodejs] Add uds-express4 for APMAPI-1252 (#4403)
cbeauchesne Mar 27, 2025
39c4f34
[PHP] Fix failing tests for APMAPI-1270 (#4402)
cbeauchesne Mar 27, 2025
b1e187d
Update final .NET test cases for DD_TRACE_128_BIT_TRACEID_LOGGING_ENA…
zacharycmontoya Mar 27, 2025
2b6494d
[ruby] Disable Experimental AppSec standalone tests (#4393)
vpellan Mar 27, 2025
d4cd791
Back to one hour
cbeauchesne Mar 27, 2025
ccf8bf7
unstress CI grid
cbeauchesne Mar 27, 2025
78ce2d8
[java] API Security sampling tests
smola Feb 25, 2025
c5da80a
Add missing telemetry config key
smola Mar 26, 2025
0447c68
Docker SSI: Migrate to docker_in_docker gitlab runners (#4381)
robertomonteromiguel Mar 28, 2025
d93877c
[Nodejs] waf request new tags (#4392)
IlyasShabi Mar 28, 2025
86ae711
[python] Skip failing test for APPSEC-57094 (#4417)
cbeauchesne Mar 28, 2025
a191f45
[python] disable test for python <= 3.2 (#4409)
christophe-papazian Mar 28, 2025
b09db06
[python] update manifest for bug (#4418)
christophe-papazian Mar 28, 2025
13a1522
[ruby] Enable V2 Appsec and SCA standalone tests (#4394)
vpellan Mar 28, 2025
1a02338
Update telemetry static files (#4421)
manuel-alvarez-alvarez Mar 28, 2025
98e9f71
Update utils/telemetry/intake/static/config_norm_rules.json (#4407)
cbeauchesne Mar 28, 2025
8429505
[php] Revert scenario skip for DEBUG-3661 (#4408)
cbeauchesne Mar 28, 2025
717758f
Skip empty test with `@irrelevant` decorator (#4400)
uurien Mar 28, 2025
df9f729
[python] expand skip from 3.3.0.dev to 3.0.0.dev for `TestDockerSSICr…
erikayasuda Mar 28, 2025
ff1aa1d
[java] Do not treat warning as error during compilation (#4427)
cbeauchesne Mar 28, 2025
e4b6b93
[php] export apache2 logs in system-tests logs, add core dump on PHP …
cbeauchesne Mar 28, 2025
9dfb436
retry npm install when it fails (#4334)
rochdev Mar 30, 2025
9be4c2b
OnBoarding: Disable Debian 12 machines (temporary) (#4432)
robertomonteromiguel Mar 31, 2025
b097849
Hot fix
cbeauchesne Mar 31, 2025
ef75c54
[asm] Split fingerprinting tests into pre/post scenarios and add fing…
Anilm3 Mar 31, 2025
73cfef2
[php] Enable PHP ASM Standalone v2 (#4379)
estringana Mar 31, 2025
b526a0c
[java] powerwaf -> ddwaf as it was renamed in the tracer (#4406)
sezen-datadog Mar 31, 2025
4c3b05d
[Java] Update `Dogstatsd_Host` manifest to irrelevant. (#4412)
mhlidd Mar 31, 2025
464b1d7
Activate PLR2004 (#4424)
cbeauchesne Mar 31, 2025
65c3c1f
Docker SSI: use public ecr to pull base images
robertomonteromiguel Mar 31, 2025
e1deddf
restore docker ssi base images
robertomonteromiguel Mar 31, 2025
28f04a6
[php][API Gateway] Add tracer version to the API Gateway test (#4438)
wantsui Mar 31, 2025
2b949d2
SSI: reduce flakiness II (#4435)
robertomonteromiguel Mar 31, 2025
2343d99
docker ssi: use public ecr images (#4437)
robertomonteromiguel Mar 31, 2025
5914a9a
[python] expand skip from 3.2 to 3.0.0.dev for `TestDockerSSIFeatures…
erikayasuda Apr 1, 2025
48a90c1
[ruby] Skip failing tests for APPSEC-57124 (#4444)
cbeauchesne Apr 1, 2025
bf41375
Update runner automatically if needed in format.sh (#4445)
cbeauchesne Apr 1, 2025
c9e0775
[Python] Enable XPassing Tags test (#4443)
mabdinur Apr 1, 2025
9e1866c
Fix readme : no need for virtualenv
cbeauchesne Apr 1, 2025
482bec9
Onboarding: easy wins Ruby (#4446)
robertomonteromiguel Apr 1, 2025
7411c2f
Activate mypy/ruff on paramatric folders (#4436)
cbeauchesne Apr 1, 2025
c5e0afc
add data_jobs_openlineage_enabled to telemetry config rules (#4442)
mobuchowski Apr 1, 2025
9d61fcb
Remove blocking assert in telemetry v2 and rasp cmdi (#4420)
IlyasShabi Apr 1, 2025
7f81afc
[Java] Re-enabling tests from #4355 (#4440)
mhlidd Apr 1, 2025
c968902
config_consistency: Enable skipped ruby tests + update weblog app (#4…
mabdinur Apr 1, 2025
e49d5b5
enable configv2 tests for python (#4428)
ZStriker19 Apr 1, 2025
25be60f
Activate mypy on Context object (#4448)
cbeauchesne Apr 2, 2025
dad148a
Add DD_TRACE_INJECT_CONTEXT_INTO_STORED_PROCEDURES_ENABLED in config …
cbeauchesne Apr 2, 2025
afa86df
[python] Minor improvments on logs to help debugging (#4452)
cbeauchesne Apr 2, 2025
ca9f6e0
[golang] fix(process-discovery): Go tracer reports `go` instead of `g…
dmehala Apr 2, 2025
ad62fc2
Onboarding: crash zombie wait for crash (#4451)
robertomonteromiguel Apr 2, 2025
ff77dc4
Onboarding: Enable SSI on bundle install (ruby) (#4447)
robertomonteromiguel Apr 2, 2025
d1cdfe9
Permanently exclude test-app-nodejs from running on Ubuntu 24.04.01 L…
szegedi Apr 2, 2025
7fb82e9
[python] Test_IastStandalone_UpstreamPropagation_V2 failing on flask-…
christophe-papazian Apr 2, 2025
2d43e08
[python] adding uds-flask to APPSEC-57145 (#4458)
cbeauchesne Apr 2, 2025
3400501
[Go] make_disant_call endpoint for net-http (#4450)
rachelyangdog Apr 2, 2025
f3824fe
[python] enable span events testing for python flask app (#4429)
quinna-h Apr 2, 2025
e9bff0c
New system tests for event tracking sdk v2 (#4193)
uurien Apr 2, 2025
424469d
Activate easy ruff rules (#4459)
cbeauchesne Apr 2, 2025
d06eaba
Onboarding: Test new aws account (#4312)
robertomonteromiguel Apr 3, 2025
f439378
[Debugger] Easy wins (#4341)
shurivich Apr 3, 2025
3846702
[python] Skip test for APMAPI-1283 (#4461)
cbeauchesne Apr 3, 2025
4897973
[ruby] Rewrite setup for Devise gem (#4352)
Strech Apr 3, 2025
1bcad7b
Onboarding: fixes INPLAT-479 (#4460)
robertomonteromiguel Apr 3, 2025
a00176f
Onboarding: Enable Debian 12 again (#4434)
robertomonteromiguel Apr 3, 2025
6fee311
[nodejs] Add express4-typescript in weblog impacted by APMAPI-1252 (#…
cbeauchesne Apr 3, 2025
c77ddcb
Onboarding: networking flakiness (#4462)
robertomonteromiguel Apr 3, 2025
04af53c
Add surefire tracer telemetry config rule (#4464)
daniel-mohedano Apr 3, 2025
296d959
Skip test_config_telemetry_completeness for .NET (#4455)
bouwkast Apr 3, 2025
1e78a02
Introduce a way to add extra argument to library cmd on parametric sc…
cbeauchesne Apr 3, 2025
ddb6437
disable shellcheck
cbeauchesne Apr 3, 2025
369aee4
Support for node and PHP
cbeauchesne Apr 3, 2025
7bba253
Add process_arguments test
mtoffl01 Apr 3, 2025
0489db8
Merge branch 'cbeauchesne/parametric-extra-cmd-arg' into mtoff/stable…
mtoffl01 Apr 3, 2025
10ac793
ran linter
mtoffl01 Apr 4, 2025
eaf81bb
Add comment about -Darg1 process argument
mtoffl01 Apr 4, 2025
98eea43
Merge branch 'main' into mtoff/stable_cfg_2
mtoffl01 Apr 4, 2025
0d01e42
Merge branch 'main' into mtoff/stable_cfg_2
mtoffl01 Apr 10, 2025
73c6c13
Modify process_arguments test to include a system property value and …
mtoffl01 Apr 16, 2025
dd92fd6
Change Test_Stable_Config_Default support to v1.49.0-snapshot
mtoffl01 Apr 16, 2025
1396ef8
Merge branch 'main' into mtoff/stable_cfg_2
mtoffl01 Apr 21, 2025
209b5b8
Modify write file script to treat single quotes as string literal
mtoffl01 Apr 21, 2025
ac0ac77
Merge branch 'main' into mtoff/stable_cfg_2
mtoffl01 May 7, 2025
b2f6290
Merge branch 'main' into mtoff/stable_cfg_2
mtoffl01 May 7, 2025
3ee341d
Define -Darg1 flag for go parametric app
mtoffl01 May 21, 2025
b3083b7
Define -Darg1 flag for .net parametric app
mtoffl01 May 21, 2025
03dab58
resolve merge conflicts with main
mtoffl01 May 21, 2025
9843fd2
run formatter
mtoffl01 May 21, 2025
ce63c0c
customize yaml instance rather than globally
mtoffl01 May 27, 2025
135ed77
remove force_skip on test_process_arguments
mtoffl01 May 27, 2025
c09aa4a
Merge branch 'main' into mtoff/stable_cfg_2
mtoffl01 May 29, 2025
ea0fc8c
Fix .NET parametric app CommandLineSwitchMappings error
mtoffl01 May 29, 2025
ced4b39
Try specifying -Darg1= in .NET app cli args
mtoffl01 May 29, 2025
065037c
Remove args for .net parametric app
mtoffl01 Jun 9, 2025
145194b
Merge branch 'main' into mtoff/stable_cfg_2
mtoffl01 Jun 18, 2025
f47533b
Merge branch 'main' into mtoff/stable_cfg_2
mtoffl01 Jun 26, 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
2 changes: 1 addition & 1 deletion manifests/java.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1974,7 +1974,7 @@ tests/:
Test_Config_TraceEnabled: v1.39.0
Test_Config_TraceLogDirectory: missing_feature
Test_Config_UnifiedServiceTagging: v1.41.1
Test_Stable_Config_Default: missing_feature (waiting on APMAPI-298 to be merged)
Test_Stable_Config_Default: v1.49.0-SNAPSHOT
test_crashtracking.py:
Test_Crashtracking: v1.38.0
test_dynamic_configuration.py:
Expand Down
8 changes: 6 additions & 2 deletions tests/parametric/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
import contextlib
import dataclasses
import os
import shlex
import shutil
import json
import subprocess
Expand Down Expand Up @@ -765,7 +764,12 @@ def write_stable_config(self, stable_config: dict, path: str, test_library: APML
self.write_stable_config_content(stable_config_content, path, test_library)

def write_stable_config_content(self, stable_config_content: str, path: str, test_library: APMLibrary) -> None:
cmd = f'bash -c "mkdir -p {Path(path).parent!s} && printf {shlex.quote(stable_config_content)} | tee {path}"'
# Base64 encode the YAML content to avoid shell issues
encoded = base64.b64encode(stable_config_content.encode()).decode()

# Now execute the shell command to decode and write to the file
cmd = f'bash -c "mkdir -p {Path(path).parent!s} && echo {encoded} | base64 -d > {path}"'

if test_library.lang == "php":
cmd = "sudo " + cmd
success, message = test_library.container_exec_run(cmd)
Expand Down
59 changes: 55 additions & 4 deletions tests/parametric/test_config_consistency.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
from urllib.parse import urlparse

import pytest
import yaml
from utils import scenarios, features, context, missing_feature, irrelevant, flaky, bug, rfc, incomplete_test_app
from .conftest import StableConfigWriter
from utils.parametric.spec.trace import find_span_in_traces, find_only_span
Expand Down Expand Up @@ -389,12 +390,27 @@ def test_dogstatsd_custom_port(self, library_env, test_agent, test_library):
if context.library != "php"
else "1", # Profiling is enabled as "1" by default in PHP if loaded
"dd_data_streams_enabled": "false",
"dd_logs_injection": {"ruby": "true", "python": "structured", "nodejs": "structured"}.get(
"dd_logs_injection": {"ruby": "true", "java": "true", "python": "structured", "nodejs": "structured"}.get(
context.library.name, "false"
), # Enabled by default in ruby, set to None in python
}


class QuotedStr(str):
__slots__ = ()


def quoted_presenter(dumper, data):
return dumper.represent_scalar("tag:yaml.org,2002:str", data, style='"')


class CustomDumper(yaml.Dumper):
pass


CustomDumper.add_representer(QuotedStr, quoted_presenter)


@scenarios.parametric
@features.stable_configuration_support
@rfc("https://docs.google.com/document/d/1MNI5d3g6R8uU3FEWf2e08aAsFcJDVhweCPMjQatEb0o")
Expand Down Expand Up @@ -590,21 +606,22 @@ def test_config_precedence(self, name, test_agent, test_library, local_cfg, libr

@pytest.mark.parametrize("library_env", [{"STABLE_CONFIG_SELECTOR": "true", "DD_SERVICE": "not-my-service"}])
@missing_feature(
context.library in ["ruby", "cpp", "dotnet", "golang", "java", "nodejs", "php", "python"],
context.library in ["ruby", "cpp", "dotnet", "golang", "nodejs", "php", "python"],
reason="UST stable config is phase 2",
)
def test_config_stable(self, library_env, test_agent, test_library):
path = "/etc/datadog-agent/managed/datadog-agent/stable/application_monitoring.yaml"
with test_library:
self.write_stable_config(
{
"rules": [
"apm_configuration_rules": [
{
"selectors": [
{
"origin": "environment_variables",
"matches": ["STABLE_CONFIG_SELECTOR=true"],
"key": "STABLE_CONFIG_SELECTOR",
"operator": "equals",
"matches": ["true"],
}
],
"configuration": {"DD_SERVICE": "my-service"},
Expand All @@ -619,3 +636,37 @@ def test_config_stable(self, library_env, test_agent, test_library):
assert (
config["dd_service"] == "my-service"
), f"Service name is '{config["dd_service"]}' instead of 'my-service'"

@missing_feature(
context.library in ["ruby", "cpp", "dotnet", "golang", "nodejs", "php", "python"],
reason="UST stable config is phase 2",
)
@pytest.mark.parametrize(
"library_extra_command_arguments",
[
["-Darg1=value"]
], # Note: This test was written for Java, so if this arg is not compatible for other libs, we may need to dynamically set library_extra_command_arguments based on context.library.name
)
def test_process_arguments(self, library_env, test_agent, test_library):
path = "/etc/datadog-agent/managed/datadog-agent/stable/application_monitoring.yaml"
with test_library:
config = {
"apm_configuration_rules": [
{
"selectors": [
{
"origin": "process_arguments",
"key": "-Darg1",
"operator": "exists",
}
],
"configuration": {"DD_SERVICE": QuotedStr("{{process_arguments['-Darg1']}}")},
}
]
}
# Use custom dumper for this specific test
stable_config_content = yaml.dump(config, Dumper=CustomDumper)
self.write_stable_config_content(stable_config_content, path, test_library)
test_library.container_restart()
config = test_library.config()
assert config["dd_service"] == "value", f"Service name is '{config["dd_service"]}' instead of 'value'"
3 changes: 2 additions & 1 deletion utils/build/docker/dotnet/parametric/Program.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
// Force the initialization of the tracer
_ = Datadog.Trace.Tracer.Instance;

var builder = WebApplication.CreateBuilder(args);
var builder = WebApplication.CreateBuilder();

var app = builder.Build();

var logger = app.Services.GetRequiredService<ILogger<ApmTestApi.Endpoints.ApmTestApi>>();
Expand Down
1 change: 1 addition & 0 deletions utils/build/docker/golang/parametric/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ func newServer() *apmClientServer {
}

func main() {
flag.String("Darg1", "", "Argument 1")
flag.Parse()
defer func() {
if err := recover(); err != nil {
Expand Down