Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
5 changes: 3 additions & 2 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -99,10 +99,11 @@ microbenchmarks:

macrobenchmarks:
stage: benchmarks
needs: [ ]
needs: [ "download_ddtrace_artifacts" ]
trigger:
include: .gitlab/benchmarks/macrobenchmarks.yml
variables:
PARENT_PIPELINE_ID: $CI_PIPELINE_ID
# Disable VPA for benchmarks
DD_DISABLE_VPA: true
allow_failure: true
Expand Down Expand Up @@ -200,4 +201,4 @@ deploy_to_di_backend:manual:
UPSTREAM_PIPELINE_ID: $CI_PIPELINE_ID
UPSTREAM_COMMIT_AUTHOR: $CI_COMMIT_AUTHOR
UPSTREAM_TAG: $CI_COMMIT_TAG
UPSTREAM_PACKAGE_JOB: build
UPSTREAM_PACKAGE_JOB: build
45 changes: 20 additions & 25 deletions .gitlab/benchmarks/macrobenchmarks.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
stages:
- build
- test
- gate
- notify
Expand All @@ -12,9 +13,25 @@ include:
variables:
MACROBENCHMARKS_CI_IMAGE: 486234852809.dkr.ecr.us-east-1.amazonaws.com/ci/benchmarking-platform:dd-trace-py-macrobenchmarks

candidate:
image: $PACKAGE_IMAGE
stage: build
tags: [ "arch:amd64" ]
needs:
- pipeline: $PARENT_PIPELINE_ID
job: download_ddtrace_artifacts
script: |
cp pywheels/*-cp39-cp39-manylinux*_x86_64*.whl ./
echo "CANDIDATE_WHL=$(ls *.whl | head -n 1)" | tee candidate.env
artifacts:
reports:
dotenv: candidate.env
paths:
- "*.whl"

.macrobenchmarks:
stage: test
needs: []
needs: [ "candidate" ]
tags: ["runner:apm-k8s-same-cpu"]
timeout: 1h
retry:
Expand All @@ -41,6 +58,8 @@ variables:
- platform/artifacts/
expire_in: 3 months
variables:
DDTRACE_INSTALL_VERSION: "${CI_PROJECT_DIR}/${CANDIDATE_WHL}"

# Benchmark's env variables. Modify to tweak benchmark parameters.
DD_TRACE_DEBUG: "false"
DD_RUNTIME_METRICS_ENABLED: "false"
Expand Down Expand Up @@ -79,7 +98,6 @@ baseline:
DD_BENCHMARKS_CONFIGURATION: baseline
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_SERVICE: "ddtrace-mb-baseline"


Expand All @@ -89,7 +107,6 @@ tracing-runtime-metrics-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_RUNTIME_METRICS_ENABLED: "false"
DD_SERVICE: "ddtrace-mb-tracing-runtime-metrics-enabled"
Expand All @@ -100,7 +117,6 @@ tracing-rc-disabled-telemetry-disabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_REMOTE_CONFIGURATION_ENABLED: "false"
Expand All @@ -113,7 +129,6 @@ tracing-rc-enabled-telemetry-disabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_REMOTE_CONFIGURATION_ENABLED: "true"
Expand All @@ -126,7 +141,6 @@ tracing-rc-disabled-telemetry-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_REMOTE_CONFIGURATION_ENABLED: "false"
Expand All @@ -139,7 +153,6 @@ tracing-rc-enabled-telemetry-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_REMOTE_CONFIGURATION_ENABLED: "true"
Expand All @@ -152,7 +165,6 @@ tracing-native-writer-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_INSTRUMENTATION_TELEMETRY_ENABLED: "true"
Expand All @@ -165,7 +177,6 @@ tracing-native-writer-enabled-stats-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_INSTRUMENTATION_TELEMETRY_ENABLED: "true"
Expand All @@ -179,7 +190,6 @@ tracing-profiling-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "true"
DD_SERVICE: "ddtrace-mb-tracing-profiling-enabled"
Expand All @@ -190,7 +200,6 @@ appsec-enabled-iast-disabled-ep-disabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_APPSEC_ENABLED: "true"
Expand All @@ -204,7 +213,6 @@ appsec-enabled-iast-disabled-ep-disabled-profiling-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "true"
DD_APPSEC_ENABLED: "true"
Expand All @@ -218,7 +226,6 @@ appsec-disabled-iast-enabled-ep-disabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_APPSEC_ENABLED: "false"
Expand All @@ -232,7 +239,6 @@ appsec-disabled-iast-enabled-ep-disabled-profiling-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "true"
DD_APPSEC_ENABLED: "false"
Expand All @@ -246,7 +252,6 @@ appsec-enabled-iast-enabled-ep-disabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_APPSEC_ENABLED: "true"
Expand All @@ -260,7 +265,6 @@ appsec-enabled-iast-disabled-ep-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_APPSEC_ENABLED: "true"
Expand All @@ -274,7 +278,6 @@ vuln-baseline:
DD_BENCHMARKS_CONFIGURATION: baseline
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/iast/articles?string1=Hi&password=root1234
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
IAST_WORST: "true"
DD_SERVICE: "ddtrace-mb-vuln-baseline"

Expand All @@ -284,7 +287,6 @@ vuln-appsec-disabled-iast-disabled-ep-disabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/iast/articles?string1=Hi&password=root1234
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_APPSEC_ENABLED: "false"
Expand All @@ -299,7 +301,6 @@ vuln-appsec-disabled-iast-enabled-ep-disabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/iast/articles?string1=Hi&password=root1234
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_APPSEC_ENABLED: "false"
Expand All @@ -314,7 +315,6 @@ vuln-appsec-disabled-iast-enabled-ep-disabled-profiling-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/iast/articles?string1=Hi&password=root1234
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "true"
DD_APPSEC_ENABLED: "false"
Expand All @@ -329,7 +329,6 @@ vuln-appsec-enabled-iast-enabled-ep-disabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_ENDPOINT: http://0.0.0.0:8000/iast/articles?string1=Hi&password=root1234
BP_PYTHON_SCENARIO_DIR: flask-realworld
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_APPSEC_ENABLED: "true"
DD_IAST_ENABLED: "true"
DD_APPSEC_RASP_ENABLED: "false"
Expand All @@ -342,7 +341,6 @@ attack-appsec-disabled-iast-disabled-ep-disabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles?q=select%20pg_sleep
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_APPSEC_ENABLED: "false"
Expand All @@ -357,7 +355,6 @@ attack-appsec-enabled-iast-disabled-ep-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles?q=select%20pg_sleep
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_APPSEC_ENABLED: "true"
Expand All @@ -372,7 +369,6 @@ attack-appsec-enabled-iast-disabled-ep-enabled-profiling-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles?q=select%20pg_sleep
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "true"
DD_APPSEC_ENABLED: "true"
Expand All @@ -387,7 +383,6 @@ attack-appsec-enabled-iast-enabled-ep-enabled:
DD_BENCHMARKS_CONFIGURATION: only-tracing
BP_PYTHON_SCENARIO_DIR: flask-realworld
BP_ENDPOINT: http://0.0.0.0:8000/api/articles?q=select%20pg_sleep
DDTRACE_INSTALL_VERSION: "git+https://github.com/Datadog/dd-trace-py@${CI_COMMIT_SHA}"
DD_TRACE_ENABLED: "true"
DD_PROFILING_ENABLED: "false"
DD_APPSEC_ENABLED: "true"
Expand Down
Loading