-
Notifications
You must be signed in to change notification settings - Fork 463
ci: increase otel-span RSS SLOs #14976
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
Conversation
|
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 240 ± 3 ms. The average import time from base is: 245 ± 4 ms. The import time difference between this PR and base is: -5.5 ± 0.2 ms. Import time breakdownThe following import paths have shrunk:
|
Performance SLOsComparing candidate brettlangdon/ci.fix.otel.span.slos (a3d127b) with baseline main (0b0f0d3) 🟡 Near SLO Breach (3 suites)🟡 djangosimple - 30/30✅ appsecTime: ✅ 20.425ms (SLO: <22.300ms -8.4%) vs baseline: -0.3% Memory: ✅ 65.492MB (SLO: <67.000MB -2.3%) vs baseline: +4.8% ✅ exception-replay-enabledTime: ✅ 1.346ms (SLO: <1.450ms -7.2%) vs baseline: +0.4% Memory: ✅ 64.495MB (SLO: <67.000MB -3.7%) vs baseline: +4.7% ✅ iastTime: ✅ 20.394ms (SLO: <22.250ms -8.3%) vs baseline: -0.2% Memory: ✅ 65.488MB (SLO: <67.000MB -2.3%) vs baseline: +4.9% ✅ profilerTime: ✅ 15.203ms (SLO: <16.550ms -8.1%) vs baseline: +0.1% Memory: ✅ 53.770MB (SLO: <54.500MB 🟡 -1.3%) vs baseline: +4.7% ✅ resource-renamingTime: ✅ 20.556ms (SLO: <21.750ms -5.5%) vs baseline: +0.2% Memory: ✅ 65.506MB (SLO: <67.000MB -2.2%) vs baseline: +4.8% ✅ span-code-originTime: ✅ 25.213ms (SLO: <28.200ms 📉 -10.6%) vs baseline: -0.9% Memory: ✅ 67.596MB (SLO: <69.500MB -2.7%) vs baseline: +3.2% ✅ tracerTime: ✅ 20.444ms (SLO: <21.750ms -6.0%) vs baseline: -0.2% Memory: ✅ 65.493MB (SLO: <67.000MB -2.2%) vs baseline: +4.8% ✅ tracer-and-profilerTime: ✅ 21.927ms (SLO: <23.500ms -6.7%) vs baseline: -0.5% Memory: ✅ 66.581MB (SLO: <67.500MB 🟡 -1.4%) vs baseline: +4.7% ✅ tracer-dont-create-db-spansTime: ✅ 19.305ms (SLO: <21.500ms 📉 -10.2%) vs baseline: ~same Memory: ✅ 65.509MB (SLO: <66.000MB 🟡 -0.7%) vs baseline: +4.9% ✅ tracer-minimalTime: ✅ 16.602ms (SLO: <17.500ms -5.1%) vs baseline: ~same Memory: ✅ 65.460MB (SLO: <66.000MB 🟡 -0.8%) vs baseline: +4.8% ✅ tracer-nativeTime: ✅ 20.445ms (SLO: <21.750ms -6.0%) vs baseline: -0.2% Memory: ✅ 71.520MB (SLO: <72.500MB 🟡 -1.4%) vs baseline: +5.0% ✅ tracer-no-cachesTime: ✅ 18.414ms (SLO: <19.650ms -6.3%) vs baseline: -0.2% Memory: ✅ 65.428MB (SLO: <67.000MB -2.3%) vs baseline: +4.8% ✅ tracer-no-databasesTime: ✅ 18.762ms (SLO: <20.100ms -6.7%) vs baseline: +0.5% Memory: ✅ 65.188MB (SLO: <67.000MB -2.7%) vs baseline: +4.5% ✅ tracer-no-middlewareTime: ✅ 20.108ms (SLO: <21.500ms -6.5%) vs baseline: -0.2% Memory: ✅ 65.457MB (SLO: <67.000MB -2.3%) vs baseline: +4.8% ✅ tracer-no-templatesTime: ✅ 20.274ms (SLO: <22.000ms -7.8%) vs baseline: ~same Memory: ✅ 65.499MB (SLO: <67.000MB -2.2%) vs baseline: +5.0% 🟡 errortrackingdjangosimple - 6/6✅ errortracking-enabled-allTime: ✅ 18.067ms (SLO: <19.850ms -9.0%) vs baseline: -0.1% Memory: ✅ 65.235MB (SLO: <66.500MB 🟡 -1.9%) vs baseline: +4.7% ✅ errortracking-enabled-userTime: ✅ 18.177ms (SLO: <19.400ms -6.3%) vs baseline: +0.6% Memory: ✅ 65.166MB (SLO: <66.500MB -2.0%) vs baseline: +4.7% ✅ tracer-enabledTime: ✅ 18.074ms (SLO: <19.450ms -7.1%) vs baseline: -0.2% Memory: ✅ 65.156MB (SLO: <66.500MB -2.0%) vs baseline: +4.6% 🟡 flasksimple - 18/18✅ appsec-getTime: ✅ 4.583ms (SLO: <4.750ms -3.5%) vs baseline: -0.4% Memory: ✅ 62.049MB (SLO: <65.000MB -4.5%) vs baseline: +4.9% ✅ appsec-postTime: ✅ 6.606ms (SLO: <6.750ms -2.1%) vs baseline: +0.1% Memory: ✅ 62.010MB (SLO: <65.000MB -4.6%) vs baseline: +4.9% ✅ appsec-telemetryTime: ✅ 4.578ms (SLO: <4.750ms -3.6%) vs baseline: +0.2% Memory: ✅ 61.951MB (SLO: <65.000MB -4.7%) vs baseline: +4.7% ✅ debuggerTime: ✅ 1.861ms (SLO: <2.000ms -7.0%) vs baseline: +0.4% Memory: ✅ 45.475MB (SLO: <47.000MB -3.2%) vs baseline: +5.0% ✅ iast-getTime: ✅ 1.863ms (SLO: <2.000ms -6.9%) vs baseline: +0.3% Memory: ✅ 42.467MB (SLO: <49.000MB 📉 -13.3%) vs baseline: +5.1% ✅ profilerTime: ✅ 1.909ms (SLO: <2.100ms -9.1%) vs baseline: ~same Memory: ✅ 46.498MB (SLO: <47.000MB 🟡 -1.1%) vs baseline: +4.9% ✅ resource-renamingTime: ✅ 3.359ms (SLO: <3.650ms -8.0%) vs baseline: -0.2% Memory: ✅ 52.258MB (SLO: <53.500MB -2.3%) vs baseline: +4.7% ✅ tracerTime: ✅ 3.354ms (SLO: <3.650ms -8.1%) vs baseline: -0.2% Memory: ✅ 52.258MB (SLO: <53.500MB -2.3%) vs baseline: +4.9% ✅ tracer-nativeTime: ✅ 3.353ms (SLO: <3.650ms -8.1%) vs baseline: -0.2% Memory: ✅ 58.247MB (SLO: <60.000MB -2.9%) vs baseline: +4.7%
|
Description
Memory usage on
main
is just above the threshold. This PR increases the SLO for now.Testing
Risks
Additional Notes
The Span add metric/tag benchmarks also use a ton of memory, their SLOs are almost 1gb. We are probably not clearing spans from span aggregator or something between loops, meaning the amount of memory used is dependent on how many loops/iterations pyperf decides to run and not the actual memory usage of the library.