Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(fleet) install datadog apm-inject by default #25677

Merged
merged 15 commits into from
May 22, 2024
Merged

Conversation

arbll
Copy link
Member

@arbll arbll commented May 16, 2024

This PR:

  • Introduces the install of default packages in the bootstrap process
  • Adds some preliminary logic to return datadog-apm-inject:latest when enabled with DD_APM_INSTRUMENTATION_ENABLED
  • Adds an override DD_INSTALLER_PACKAGES for tests

This PR:
- Introduces the install of default packages in the bootstrap process
- Adds some preliminary logic to return datadog-apm-inject:latest when enabled with `DD_APM_INSTRUMENTATION_ENABLED`
- Adds an override `DD_INSTALLER_PACKAGES` for tests
@arbll arbll added changelog/no-changelog qa/done Skip QA week as QA was done before merge and regressions are covered by tests team/fleet-automation labels May 16, 2024
@arbll arbll requested a review from a team as a code owner May 16, 2024 20:22
@pr-commenter
Copy link

pr-commenter bot commented May 16, 2024

Test changes on VM

Use this command from test-infra-definitions to manually test this PR changes on a VM:

inv create-vm --pipeline-id=34805247 --os-family=ubuntu

@pr-commenter
Copy link

pr-commenter bot commented May 16, 2024

Regression Detector

Regression Detector Results

Run ID: 93adc55e-3e3f-4c4d-b884-9c4d45a5b45c
Baseline: 0e8103c
Comparison: 0bdcb2b

Performance changes are noted in the perf column of each table:

  • ✅ = significantly better comparison variant performance
  • ❌ = significantly worse comparison variant performance
  • ➖ = no significant change in performance

No significant changes in experiment optimization goals

Confidence level: 90.00%
Effect size tolerance: |Δ mean %| ≥ 5.00%

There were no significant changes in experiment optimization goals at this confidence level and effect size tolerance.

Fine details of change detection per experiment

perf experiment goal Δ mean % Δ mean % CI
pycheck_1000_100byte_tags % cpu utilization +2.52 [-2.25, +7.30]
uds_dogstatsd_to_api_cpu % cpu utilization +0.52 [-2.37, +3.41]
file_tree memory utilization +0.07 [-0.02, +0.17]
trace_agent_msgpack ingress throughput -0.00 [-0.00, +0.00]
trace_agent_json ingress throughput -0.00 [-0.01, +0.01]
idle memory utilization -0.01 [-0.04, +0.03]
uds_dogstatsd_to_api ingress throughput -0.01 [-0.21, +0.19]
tcp_dd_logs_filter_exclude ingress throughput -0.03 [-0.07, +0.02]
otel_to_otel_logs ingress throughput -0.10 [-0.47, +0.28]
basic_py_check % cpu utilization -1.22 [-3.72, +1.28]
tcp_syslog_to_blackhole ingress throughput -9.77 [-29.64, +10.11]

Explanation

A regression test is an A/B test of target performance in a repeatable rig, where "performance" is measured as "comparison variant minus baseline variant" for an optimization goal (e.g., ingress throughput). Due to intrinsic variability in measuring that goal, we can only estimate its mean value for each experiment; we report uncertainty in that value as a 90.00% confidence interval denoted "Δ mean % CI".

For each experiment, we decide whether a change in performance is a "regression" -- a change worth investigating further -- if all of the following criteria are true:

  1. Its estimated |Δ mean %| ≥ 5.00%, indicating the change is big enough to merit a closer look.

  2. Its 90.00% confidence interval "Δ mean % CI" does not contain zero, indicating that if our statistical model is accurate, there is at least a 90.00% chance there is a difference in performance between baseline and comparison variants.

  3. Its configuration does not mark it "erratic".

Copy link

codecov bot commented May 19, 2024

Codecov Report

Attention: Patch coverage is 81.57895% with 14 lines in your changes are missing coverage. Please review.

Project coverage is 40.60%. Comparing base (0e8103c) to head (0bdcb2b).
Report is 5 commits behind head on main.

Current head 0bdcb2b differs from pull request most recent head fb24ab5

Please upload reports for the commit fb24ab5 to get more accurate results.

Files Patch % Lines
cmd/installer/subcommands/installer/command.go 0.00% 13 Missing ⚠️
pkg/fleet/env/env.go 96.66% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##             main   #25677       +/-   ##
===========================================
- Coverage   44.99%   40.60%    -4.40%     
===========================================
  Files        2312       25     -2287     
  Lines      266293     2635   -263658     
===========================================
- Hits       119826     1070   -118756     
+ Misses     136904     1388   -135516     
+ Partials     9563      177     -9386     
Flag Coverage Δ
amzn_aarch64 40.56% <81.57%> (-5.23%) ⬇️
centos_x86_64 40.56% <81.57%> (-5.14%) ⬇️
ubuntu_aarch64 40.49% <81.57%> (-5.31%) ⬇️
ubuntu_x86_64 40.49% <81.57%> (-5.30%) ⬇️
windows_amd64 19.51% <79.41%> (-31.75%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@arbll
Copy link
Member Author

arbll commented May 22, 2024

Going to merge to fix the e2e tests (tested locally)

@arbll arbll merged commit 442605d into main May 22, 2024
25 of 29 checks passed
@arbll arbll deleted the arbll/install-apm-inject branch May 22, 2024 11:30
@github-actions github-actions bot added this to the 7.55.0 milestone May 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changelog/no-changelog qa/done Skip QA week as QA was done before merge and regressions are covered by tests team/fleet-automation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants