DataDog / libdatadog

Datadog shared rust-based library. For now only used in other products (e.g. Ruby or PHP libraries).
Apache License 2.0
48 stars 9 forks source link

Add header so we get real http status codes from the trace agent (APMSP-1418) #744

Closed ajgajg1134 closed 1 week ago

ajgajg1134 commented 1 week ago

What does this PR do?

Set the Datadog-Send-Real-Http-Status header to indicate to the agent that we are able to handle 429 responses and will appropriately back off and retry. Due to legacy compatibility reasons the default behavior of the trace agent for trace payloads is to always respond with a 200 status code even if the trace-agent detects it is overwhelmed and will drop the payload. By setting this header the trace-agent will instead respond with a 429 giving us an opportunity to retry and decrease the likelihood of lost data.

Motivation

We have retry logic but we aren't using it :(

Additional Notes

Anything else we should know when reviewing?

How to test the change?

This change is well covered by the unit tests

pr-commenter[bot] commented 1 week ago

Benchmarks

Comparison

Benchmark execution time: 2024-11-15 19:08:22

Comparing candidate commit 56caa3e6 in PR branch andrew.glaude/httpretry with baseline commit 9ffc56b0 in branch main.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 51 metrics, 2 unstable metrics.

Candidate

Candidate benchmark details ### Group 1 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |----------------------------------------------|--------------|---------|-------------------|-------------------|---------|---------|---------|---------|--------------------|--------|--------|-----|-------|----|-----------| |benching string interning on wordpress profile|execution_time|141.758µs|143.135µs ± 0.612µs|143.071µs ± 0.196µs|143.282µs|143.941µs|144.519µs|148.985µs|4.13% |4.574 |40.998 |0.43%|0.043µs|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |----------------------------------------------|--------------|--------------------------------------------|-------------------|------------------------|---------------| |benching string interning on wordpress profile|execution_time|[143.050µs; 143.220µs] or [-0.059%; +0.059%]|None |None |None | ### Group 2 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |--------------------|--------------|-------|-----------------|-----------------|-------|-------|--------|--------|--------------------|--------|--------|------|-------|----|-----------| |write only interface|execution_time|1.434µs|3.271µs ± 1.423µs|3.123µs ± 0.026µs|3.145µs|3.176µs|13.981µs|15.092µs|383.31% |7.571 |57.517 |43.40%|0.101µs|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |--------------------|--------------|----------------------------------------|-------------------|------------------------|---------------| |write only interface|execution_time|[3.074µs; 3.468µs] or [-6.030%; +6.030%]|None |None |None | ### Group 3 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |--------------------------------------|--------------|-------|-----------------|-----------------|-------|-------|-------|-------|--------------------|--------|--------|-----|-------|----|-----------| |concentrator/add_spans_to_concentrator|execution_time|9.017ms|9.050ms ± 0.014ms|9.051ms ± 0.008ms|9.057ms|9.073ms|9.082ms|9.107ms|0.63% |0.403 |1.221 |0.15%|0.001ms|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |--------------------------------------|--------------|----------------------------------------|-------------------|------------------------|---------------| |concentrator/add_spans_to_concentrator|execution_time|[9.049ms; 9.052ms] or [-0.021%; +0.021%]|None |None |None | ### Group 4 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |----------------------------------------------------------|--------------|-----------------|----------------------------------|----------------------------------|-----------------|-----------------|-----------------|-----------------|--------------------|--------|--------|-----|-------------|----|-----------| |credit_card/is_card_number/ |execution_time|4.591µs |4.612µs ± 0.008µs |4.612µs ± 0.005µs |4.617µs |4.626µs |4.630µs |4.631µs |0.43% |0.276 |-0.189 |0.17%|0.001µs |1 |200 | |credit_card/is_card_number/ |throughput |215915791.050op/s|216844280.238op/s ± 360403.692op/s|216841409.468op/s ± 250940.593op/s|217102649.174op/s|217396000.937op/s|217422331.749op/s|217811541.300op/s|0.45% |-0.267 |-0.196 |0.17%|25484.389op/s|1 |200 | |credit_card/is_card_number/ 3782-8224-6310-005 |execution_time|93.109µs |93.537µs ± 0.374µs |93.453µs ± 0.111µs |93.588µs |94.216µs |94.827µs |97.237µs |4.05% |5.799 |48.789 |0.40%|0.026µs |1 |200 | |credit_card/is_card_number/ 3782-8224-6310-005 |throughput |10284128.361op/s |10691146.733op/s ± 41774.661op/s |10700518.456op/s ± 12739.967op/s |10711511.126op/s |10718486.656op/s |10728958.284op/s |10740057.191op/s |0.37% |-5.600 |45.919 |0.39%|2953.915op/s |1 |200 | |credit_card/is_card_number/ 378282246310005 |execution_time|85.207µs |85.402µs ± 0.359µs |85.313µs ± 0.023µs |85.340µs |86.080µs |86.874µs |88.831µs |4.12% |5.981 |45.617 |0.42%|0.025µs |1 |200 | |credit_card/is_card_number/ 378282246310005 |throughput |11257289.453op/s |11709524.807op/s ± 47992.587op/s |11721515.080op/s ± 3222.656op/s |11724334.370op/s |11728524.437op/s |11732098.451op/s |11736157.650op/s |0.12% |-5.837 |43.422 |0.41%|3393.588op/s |1 |200 | |credit_card/is_card_number/37828224631 |execution_time|4.599µs |4.614µs ± 0.008µs |4.615µs ± 0.006µs |4.619µs |4.628µs |4.631µs |4.632µs |0.37% |0.102 |-0.670 |0.17%|0.001µs |1 |200 | |credit_card/is_card_number/37828224631 |throughput |215912685.229op/s|216740797.880op/s ± 374498.534op/s|216703101.231op/s ± 274352.284op/s|217029171.980op/s|217358293.613op/s|217415470.370op/s|217432314.915op/s|0.34% |-0.095 |-0.674 |0.17%|26481.045op/s|1 |200 | |credit_card/is_card_number/378282246310005 |execution_time|81.633µs |82.002µs ± 0.193µs |81.975µs ± 0.158µs |82.140µs |82.320µs |82.494µs |82.590µs |0.75% |0.470 |-0.163 |0.23%|0.014µs |1 |200 | |credit_card/is_card_number/378282246310005 |throughput |12107981.760op/s |12194879.691op/s ± 28660.886op/s |12198781.973op/s ± 23491.899op/s |12220338.004op/s |12234578.590op/s |12242166.785op/s |12249979.918op/s |0.42% |-0.459 |-0.186 |0.23%|2026.631op/s |1 |200 | |credit_card/is_card_number/37828224631000521389798 |execution_time|58.857µs |58.889µs ± 0.018µs |58.889µs ± 0.014µs |58.902µs |58.915µs |58.932µs |58.951µs |0.10% |0.427 |-0.030 |0.03%|0.001µs |1 |200 | |credit_card/is_card_number/37828224631000521389798 |throughput |16963186.493op/s |16981178.505op/s ± 5121.120op/s |16980976.212op/s ± 4102.110op/s |16985648.401op/s |16988339.713op/s |16990088.203op/s |16990432.687op/s |0.06% |-0.425 |-0.034 |0.03%|362.118op/s |1 |200 | |credit_card/is_card_number/x371413321323331 |execution_time|6.818µs |6.839µs ± 0.031µs |6.824µs ± 0.003µs |6.850µs |6.901µs |6.938µs |6.982µs |2.32% |1.961 |3.726 |0.45%|0.002µs |1 |200 | |credit_card/is_card_number/x371413321323331 |throughput |143222167.657op/s|146223627.569op/s ± 652956.888op/s|146552017.947op/s ± 69401.347op/s |146607091.242op/s|146639772.681op/s|146649450.650op/s|146663191.692op/s|0.08% |-1.936 |3.560 |0.45%|46171.024op/s|1 |200 | |credit_card/is_card_number_no_luhn/ |execution_time|4.597µs |4.611µs ± 0.009µs |4.610µs ± 0.007µs |4.617µs |4.629µs |4.632µs |4.632µs |0.48% |0.536 |-0.550 |0.19%|0.001µs |1 |200 | |credit_card/is_card_number_no_luhn/ |throughput |215872382.697op/s|216869624.015op/s ± 411494.084op/s|216917114.764op/s ± 349308.119op/s|217273825.051op/s|217399177.862op/s|217421693.579op/s|217542184.529op/s|0.29% |-0.530 |-0.561 |0.19%|29097.026op/s|1 |200 | |credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 |execution_time|73.329µs |73.644µs ± 0.165µs |73.653µs ± 0.105µs |73.749µs |73.847µs |73.920µs |74.759µs |1.50% |1.317 |9.015 |0.22%|0.012µs |1 |200 | |credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 |throughput |13376344.839op/s |13578936.009op/s ± 30295.368op/s |13577180.835op/s ± 19343.674op/s |13598268.262op/s |13627874.047op/s |13636365.473op/s |13637254.251op/s |0.44% |-1.256 |8.546 |0.22%|2142.206op/s |1 |200 | |credit_card/is_card_number_no_luhn/ 378282246310005 |execution_time|65.270µs |65.465µs ± 0.125µs |65.456µs ± 0.105µs |65.566µs |65.677µs |65.712µs |65.737µs |0.43% |0.159 |-1.050 |0.19%|0.009µs |1 |200 | |credit_card/is_card_number_no_luhn/ 378282246310005 |throughput |15212019.763op/s |15275385.255op/s ± 29083.211op/s |15277381.178op/s ± 24415.326op/s |15300551.586op/s |15317911.310op/s |15319901.241op/s |15320977.482op/s |0.29% |-0.153 |-1.054 |0.19%|2056.494op/s |1 |200 | |credit_card/is_card_number_no_luhn/37828224631 |execution_time|4.599µs |4.612µs ± 0.008µs |4.612µs ± 0.006µs |4.618µs |4.628µs |4.630µs |4.633µs |0.45% |0.340 |-0.634 |0.18%|0.001µs |1 |200 | |credit_card/is_card_number_no_luhn/37828224631 |throughput |215849650.871op/s|216812397.340op/s ± 393782.033op/s|216830438.837op/s ± 283293.055op/s|217111866.949op/s|217389006.764op/s|217419149.115op/s|217431057.071op/s|0.28% |-0.333 |-0.641 |0.18%|27844.595op/s|1 |200 | |credit_card/is_card_number_no_luhn/378282246310005 |execution_time|62.116µs |62.532µs ± 0.120µs |62.512µs ± 0.052µs |62.612µs |62.738µs |62.819µs |62.930µs |0.67% |0.189 |0.849 |0.19%|0.008µs |1 |200 | |credit_card/is_card_number_no_luhn/378282246310005 |throughput |15890730.207op/s |15991751.518op/s ± 30690.394op/s |15996922.232op/s ± 13419.463op/s |16007101.188op/s |16041967.418op/s |16060612.720op/s |16098921.372op/s |0.64% |-0.173 |0.854 |0.19%|2170.139op/s |1 |200 | |credit_card/is_card_number_no_luhn/37828224631000521389798|execution_time|58.842µs |58.891µs ± 0.020µs |58.892µs ± 0.015µs |58.902µs |58.928µs |58.944µs |58.957µs |0.11% |0.675 |0.308 |0.03%|0.001µs |1 |200 | |credit_card/is_card_number_no_luhn/37828224631000521389798|throughput |16961590.478op/s |16980534.822op/s ± 5667.265op/s |16980117.132op/s ± 4398.629op/s |16985485.054op/s |16987375.917op/s |16988529.651op/s |16994548.149op/s |0.08% |-0.673 |0.304 |0.03%|400.736op/s |1 |200 | |credit_card/is_card_number_no_luhn/x371413321323331 |execution_time|6.817µs |6.832µs ± 0.024µs |6.823µs ± 0.003µs |6.827µs |6.881µs |6.921µs |7.021µs |2.90% |3.940 |21.095 |0.35%|0.002µs |1 |200 | |credit_card/is_card_number_no_luhn/x371413321323331 |throughput |142427298.468op/s|146382140.409op/s ± 509760.658op/s|146563859.966op/s ± 58504.200op/s |146618203.714op/s|146641497.191op/s|146658044.427op/s|146689560.011op/s|0.09% |-3.862 |20.160 |0.35%|36045.522op/s|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |----------------------------------------------------------|--------------|------------------------------------------------------------|-------------------|------------------------|---------------| |credit_card/is_card_number/ |execution_time|[4.611µs; 4.613µs] or [-0.023%; +0.023%] |None |None |None | |credit_card/is_card_number/ |throughput |[216794331.752op/s; 216894228.723op/s] or [-0.023%; +0.023%]|None |None |None | |credit_card/is_card_number/ 3782-8224-6310-005 |execution_time|[93.485µs; 93.589µs] or [-0.055%; +0.055%] |None |None |None | |credit_card/is_card_number/ 3782-8224-6310-005 |throughput |[10685357.166op/s; 10696936.299op/s] or [-0.054%; +0.054%] |None |None |None | |credit_card/is_card_number/ 378282246310005 |execution_time|[85.352µs; 85.452µs] or [-0.058%; +0.058%] |None |None |None | |credit_card/is_card_number/ 378282246310005 |throughput |[11702873.496op/s; 11716176.118op/s] or [-0.057%; +0.057%] |None |None |None | |credit_card/is_card_number/37828224631 |execution_time|[4.613µs; 4.615µs] or [-0.024%; +0.024%] |None |None |None | |credit_card/is_card_number/37828224631 |throughput |[216688895.985op/s; 216792699.775op/s] or [-0.024%; +0.024%]|None |None |None | |credit_card/is_card_number/378282246310005 |execution_time|[81.975µs; 82.029µs] or [-0.033%; +0.033%] |None |None |None | |credit_card/is_card_number/378282246310005 |throughput |[12190907.568op/s; 12198851.814op/s] or [-0.033%; +0.033%] |None |None |None | |credit_card/is_card_number/37828224631000521389798 |execution_time|[58.886µs; 58.891µs] or [-0.004%; +0.004%] |None |None |None | |credit_card/is_card_number/37828224631000521389798 |throughput |[16980468.767op/s; 16981888.243op/s] or [-0.004%; +0.004%] |None |None |None | |credit_card/is_card_number/x371413321323331 |execution_time|[6.835µs; 6.843µs] or [-0.062%; +0.062%] |None |None |None | |credit_card/is_card_number/x371413321323331 |throughput |[146133134.024op/s; 146314121.114op/s] or [-0.062%; +0.062%]|None |None |None | |credit_card/is_card_number_no_luhn/ |execution_time|[4.610µs; 4.612µs] or [-0.026%; +0.026%] |None |None |None | |credit_card/is_card_number_no_luhn/ |throughput |[216812594.892op/s; 216926653.137op/s] or [-0.026%; +0.026%]|None |None |None | |credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 |execution_time|[73.621µs; 73.667µs] or [-0.031%; +0.031%] |None |None |None | |credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 |throughput |[13574737.362op/s; 13583134.656op/s] or [-0.031%; +0.031%] |None |None |None | |credit_card/is_card_number_no_luhn/ 378282246310005 |execution_time|[65.448µs; 65.482µs] or [-0.026%; +0.026%] |None |None |None | |credit_card/is_card_number_no_luhn/ 378282246310005 |throughput |[15271354.602op/s; 15279415.908op/s] or [-0.026%; +0.026%] |None |None |None | |credit_card/is_card_number_no_luhn/37828224631 |execution_time|[4.611µs; 4.613µs] or [-0.025%; +0.025%] |None |None |None | |credit_card/is_card_number_no_luhn/37828224631 |throughput |[216757822.938op/s; 216866971.743op/s] or [-0.025%; +0.025%]|None |None |None | |credit_card/is_card_number_no_luhn/378282246310005 |execution_time|[62.516µs; 62.549µs] or [-0.027%; +0.027%] |None |None |None | |credit_card/is_card_number_no_luhn/378282246310005 |throughput |[15987498.125op/s; 15996004.912op/s] or [-0.027%; +0.027%] |None |None |None | |credit_card/is_card_number_no_luhn/37828224631000521389798|execution_time|[58.888µs; 58.894µs] or [-0.005%; +0.005%] |None |None |None | |credit_card/is_card_number_no_luhn/37828224631000521389798|throughput |[16979749.394op/s; 16981320.251op/s] or [-0.005%; +0.005%] |None |None |None | |credit_card/is_card_number_no_luhn/x371413321323331 |execution_time|[6.828µs; 6.835µs] or [-0.049%; +0.049%] |None |None |None | |credit_card/is_card_number_no_luhn/x371413321323331 |throughput |[146311492.485op/s; 146452788.334op/s] or [-0.048%; +0.048%]|None |None |None | ### Group 5 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |-----------------------|--------------|-------|-----------------|-----------------|-------|-------|-------|-------|--------------------|--------|--------|-----|-------|----|-----------| |tags/replace_trace_tags|execution_time|2.630µs|2.682µs ± 0.018µs|2.685µs ± 0.012µs|2.692µs|2.707µs|2.710µs|2.714µs|1.08% |-0.670 |0.584 |0.65%|0.001µs|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |-----------------------|--------------|----------------------------------------|-------------------|------------------------|---------------| |tags/replace_trace_tags|execution_time|[2.679µs; 2.684µs] or [-0.091%; +0.091%]|None |None |None | ### Group 6 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |----------------------------------------|--------------|---------|--------------------|-------------------|---------|---------|---------|---------|--------------------|--------|--------|-----|-------|----|-----------| |normalization/normalize_trace/test_trace|execution_time|295.592ns|306.211ns ± 12.980ns|300.748ns ± 4.259ns|309.432ns|338.239ns|343.054ns|343.262ns|14.14% |1.608 |1.517 |4.23%|0.918ns|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |----------------------------------------|--------------|--------------------------------------------|-------------------|------------------------|---------------| |normalization/normalize_trace/test_trace|execution_time|[304.412ns; 308.010ns] or [-0.587%; +0.587%]|None |None |None | ### Group 7 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |-------------------------------------------------------------------------------------------------------|--------------|----------------|--------------------------------|--------------------------------|----------------|----------------|----------------|----------------|--------------------|--------|--------|-----|------------|----|-----------| |normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000...|execution_time|506.022µs |507.019µs ± 0.434µs |507.015µs ± 0.298µs |507.312µs |507.649µs |507.870µs |509.415µs |0.47% |0.742 |3.472 |0.09%|0.031µs |1 |200 | |normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000...|throughput |1963036.032op/s |1972314.151op/s ± 1688.836op/s |1972328.921op/s ± 1160.392op/s |1973447.098op/s |1974928.228op/s |1975705.482op/s |1976199.812op/s |0.20% |-0.730 |3.405 |0.09%|119.419op/s |1 |200 | |normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて |execution_time|467.490µs |468.224µs ± 0.328µs |468.193µs ± 0.194µs |468.399µs |468.809µs |469.013µs |469.228µs |0.22% |0.368 |-0.111 |0.07%|0.023µs |1 |200 | |normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて |throughput |2131160.835op/s |2135729.941op/s ± 1496.514op/s |2135869.998op/s ± 886.569op/s |2136724.262op/s |2137959.259op/s |2138462.963op/s |2139084.393op/s |0.15% |-0.365 |-0.115 |0.07%|105.820op/s |1 |200 | |normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters |execution_time|179.714µs |180.219µs ± 0.189µs |180.203µs ± 0.117µs |180.327µs |180.548µs |180.754µs |180.942µs |0.41% |0.651 |1.250 |0.10%|0.013µs |1 |200 | |normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters |throughput |5526636.569op/s |5548812.660op/s ± 5808.895op/s |5549285.164op/s ± 3618.090op/s |5552813.760op/s |5557183.189op/s |5560148.199op/s |5564406.581op/s |0.27% |-0.642 |1.232 |0.10%|410.751op/s |1 |200 | |normalization/normalize_service/normalize_service/[empty string] |execution_time|44.823µs |45.001µs ± 0.075µs |44.998µs ± 0.047µs |45.046µs |45.127µs |45.177µs |45.287µs |0.64% |0.432 |0.488 |0.17%|0.005µs |1 |200 | |normalization/normalize_service/normalize_service/[empty string] |throughput |22081609.872op/s|22221861.919op/s ± 36854.600op/s|22223428.838op/s ± 23157.904op/s|22246294.326op/s|22275272.479op/s|22294317.490op/s|22309791.229op/s|0.39% |-0.421 |0.465 |0.17%|2606.014op/s|1 |200 | |normalization/normalize_service/normalize_service/test_ASCII |execution_time|49.018µs |49.178µs ± 0.104µs |49.164µs ± 0.047µs |49.219µs |49.290µs |49.349µs |50.273µs |2.26% |5.851 |59.588 |0.21%|0.007µs |1 |200 | |normalization/normalize_service/normalize_service/test_ASCII |throughput |19891346.445op/s|20334581.716op/s ± 42507.926op/s|20339964.561op/s ± 19355.554op/s|20356229.251op/s|20380421.697op/s|20397811.609op/s|20400683.831op/s|0.30% |-5.680 |57.240 |0.21%|3005.764op/s|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |-------------------------------------------------------------------------------------------------------|--------------|----------------------------------------------------------|-------------------|------------------------|---------------| |normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000...|execution_time|[506.959µs; 507.079µs] or [-0.012%; +0.012%] |None |None |None | |normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000...|throughput |[1972080.095op/s; 1972548.208op/s] or [-0.012%; +0.012%] |None |None |None | |normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて |execution_time|[468.179µs; 468.270µs] or [-0.010%; +0.010%] |None |None |None | |normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて |throughput |[2135522.539op/s; 2135937.344op/s] or [-0.010%; +0.010%] |None |None |None | |normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters |execution_time|[180.193µs; 180.245µs] or [-0.015%; +0.015%] |None |None |None | |normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters |throughput |[5548007.603op/s; 5549617.717op/s] or [-0.015%; +0.015%] |None |None |None | |normalization/normalize_service/normalize_service/[empty string] |execution_time|[44.991µs; 45.011µs] or [-0.023%; +0.023%] |None |None |None | |normalization/normalize_service/normalize_service/[empty string] |throughput |[22216754.225op/s; 22226969.612op/s] or [-0.023%; +0.023%]|None |None |None | |normalization/normalize_service/normalize_service/test_ASCII |execution_time|[49.163µs; 49.192µs] or [-0.029%; +0.029%] |None |None |None | |normalization/normalize_service/normalize_service/test_ASCII |throughput |[20328690.526op/s; 20340472.905op/s] or [-0.029%; +0.029%]|None |None |None | ### Group 8 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |-----------------|--------------|--------|-------------------|------------------|--------|--------|--------|---------|--------------------|--------|--------|------|-------|----|-----------| |two way interface|execution_time|18.539µs|23.995µs ± 10.018µs|19.399µs ± 0.307µs|20.122µs|38.375µs|39.895µs|100.387µs|417.48% |3.541 |19.678 |41.65%|0.708µs|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |-----------------|--------------|------------------------------------------|-------------------|------------------------|---------------| |two way interface|execution_time|[22.606µs; 25.383µs] or [-5.786%; +5.786%]|None |None |None | ### Group 9 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |------------------------|--------------|--------|------------------|------------------|--------|--------|--------|--------|--------------------|--------|--------|-----|-------|----|-----------| |sql/obfuscate_sql_string|execution_time|69.745µs|69.941µs ± 0.156µs|69.917µs ± 0.042µs|69.969µs|70.088µs|70.293µs|71.708µs|2.56% |7.793 |82.384 |0.22%|0.011µs|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |------------------------|--------------|------------------------------------------|-------------------|------------------------|---------------| |sql/obfuscate_sql_string|execution_time|[69.920µs; 69.963µs] or [-0.031%; +0.031%]|None |None |None | ### Group 10 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |-------------------------------------------------------------------------------------------------------|--------------|----------------|---------------------------------|--------------------------------|----------------|----------------|----------------|----------------|--------------------|--------|--------|-----|-------------|----|-----------| |normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo...|execution_time|271.973µs |273.316µs ± 0.838µs |273.247µs ± 0.542µs |273.830µs |274.845µs |275.625µs |276.263µs |1.10% |0.759 |0.562 |0.31%|0.059µs |1 |200 | |normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo...|throughput |3619736.978op/s |3658802.978op/s ± 11191.829op/s |3659687.825op/s ± 7265.244op/s |3666716.269op/s |3674381.932op/s |3676494.882op/s |3676841.427op/s |0.47% |-0.741 |0.514 |0.31%|791.382op/s |1 |200 | |normalization/normalize_name/normalize_name/bad-name |execution_time|25.800µs |25.940µs ± 0.122µs |25.919µs ± 0.049µs |25.968µs |26.114µs |26.441µs |26.648µs |2.81% |2.989 |11.275 |0.47%|0.009µs |1 |200 | |normalization/normalize_name/normalize_name/bad-name |throughput |37526097.296op/s|38551589.561op/s ± 178289.841op/s|38581130.266op/s ± 72473.374op/s|38654557.684op/s|38707784.391op/s|38746031.408op/s|38759591.641op/s|0.46% |-2.929 |10.871 |0.46%|12606.996op/s|1 |200 | |normalization/normalize_name/normalize_name/good |execution_time|15.438µs |15.490µs ± 0.034µs |15.486µs ± 0.022µs |15.508µs |15.538µs |15.588µs |15.727µs |1.55% |2.132 |11.032 |0.22%|0.002µs |1 |200 | |normalization/normalize_name/normalize_name/good |throughput |63584816.582op/s|64559346.912op/s ± 141830.368op/s|64572960.319op/s ± 91967.585op/s|64665825.207op/s|64726671.678op/s|64749629.786op/s|64776943.295op/s|0.32% |-2.077 |10.558 |0.22%|10028.921op/s|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |-------------------------------------------------------------------------------------------------------|--------------|----------------------------------------------------------|-------------------|------------------------|---------------| |normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo...|execution_time|[273.200µs; 273.432µs] or [-0.042%; +0.042%] |None |None |None | |normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo...|throughput |[3657251.898op/s; 3660354.058op/s] or [-0.042%; +0.042%] |None |None |None | |normalization/normalize_name/normalize_name/bad-name |execution_time|[25.923µs; 25.957µs] or [-0.065%; +0.065%] |None |None |None | |normalization/normalize_name/normalize_name/bad-name |throughput |[38526880.304op/s; 38576298.818op/s] or [-0.064%; +0.064%]|None |None |None | |normalization/normalize_name/normalize_name/good |execution_time|[15.485µs; 15.494µs] or [-0.031%; +0.031%] |None |None |None | |normalization/normalize_name/normalize_name/good |throughput |[64539690.587op/s; 64579003.237op/s] or [-0.030%; +0.030%]|None |None |None | ### Group 11 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |----------------------------------------------------------------------------|--------------|--------|------------------|------------------|--------|--------|--------|--------|--------------------|--------|--------|-----|-------|----|-----------| |benching deserializing traces from msgpack to their internal representation |execution_time|59.105ms|59.314ms ± 0.161ms|59.259ms ± 0.067ms|59.394ms|59.635ms|59.856ms|59.978ms|1.21% |1.518 |2.422 |0.27%|0.011ms|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |----------------------------------------------------------------------------|--------------|------------------------------------------|-------------------|------------------------|---------------| |benching deserializing traces from msgpack to their internal representation |execution_time|[59.292ms; 59.336ms] or [-0.038%; +0.038%]|None |None |None | ### Group 12 |cpu_model |git_commit_sha|git_commit_date|git_branch | |----------------------------------------------|--------------|---------------|-----------------------| |Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz|56caa3e6 |1731697036 |andrew.glaude/httpretry| |scenario |metric |min |mean ± sd |median ± mad |p75 |p95 |p99 |max |peak_to_median_ratio|skewness|kurtosis|cv |sem |runs|sample_size| |----------------------------|--------------|--------|------------------|------------------|--------|--------|--------|--------|--------------------|--------|--------|-----|-------|----|-----------| |redis/obfuscate_redis_string|execution_time|36.585µs|36.980µs ± 0.663µs|36.697µs ± 0.062µs|36.750µs|38.349µs|38.384µs|40.252µs|9.69% |1.940 |2.930 |1.79%|0.047µs|1 |200 | |scenario |metric |95% CI mean |Shapiro-Wilk pvalue|Ljung-Box pvalue (lag=1)|Dip test pvalue| |----------------------------|--------------|------------------------------------------|-------------------|------------------------|---------------| |redis/obfuscate_redis_string|execution_time|[36.888µs; 37.072µs] or [-0.249%; +0.249%]|None |None |None |

Baseline

Omitted due to size.

codecov-commenter commented 1 week ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 70.53%. Comparing base (9ffc56b) to head (56caa3e).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #744 +/- ## ========================================== - Coverage 70.55% 70.53% -0.03% ========================================== Files 296 296 Lines 43275 43277 +2 ========================================== - Hits 30532 30524 -8 - Misses 12743 12753 +10 ``` | [Components](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=components&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | Coverage Δ | | |---|---|---| | [crashtracker](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `37.11% <ø> (-0.04%)` | :arrow_down: | | [crashtracker-ffi](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `8.67% <ø> (ø)` | | | [datadog-alloc](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `98.73% <ø> (ø)` | | | [data-pipeline](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `91.95% <ø> (ø)` | | | [data-pipeline-ffi](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `0.00% <ø> (ø)` | | | [ddcommon](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `83.46% <ø> (ø)` | | | [ddcommon-ffi](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `69.12% <ø> (ø)` | | | [ddtelemetry](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `59.10% <ø> (ø)` | | | [ddtelemetry-ffi](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `22.13% <ø> (ø)` | | | [dogstatsd](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `89.45% <ø> (ø)` | | | [dogstatsd-client](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `79.77% <ø> (ø)` | | | [ipc](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `82.76% <ø> (-0.19%)` | :arrow_down: | | [profiling](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `84.30% <ø> (ø)` | | | [profiling-ffi](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `77.46% <ø> (ø)` | | | [serverless](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `0.00% <ø> (ø)` | | | [sidecar](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `38.03% <ø> (ø)` | | | [sidecar-ffi](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `0.00% <ø> (ø)` | | | [spawn-worker](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `50.36% <ø> (ø)` | | | [tinybytes](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `94.77% <ø> (ø)` | | | [trace-mini-agent](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `72.18% <ø> (ø)` | | | [trace-normalization](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `98.25% <ø> (ø)` | | | [trace-obfuscation](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `95.77% <ø> (ø)` | | | [trace-protobuf](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `77.67% <ø> (ø)` | | | [trace-utils](https://app.codecov.io/gh/DataDog/libdatadog/pull/744/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=DataDog) | `93.15% <100.00%> (+<0.01%)` | :arrow_up: |