DataDog / dd-trace-py

Datadog Python APM Client
https://ddtrace.readthedocs.io/
Other
553 stars 416 forks source link

fix: [SVLS-5953] pointers for deserialized DynamoDB requests [backport 2.16] #11443

Closed github-actions[bot] closed 6 days ago

github-actions[bot] commented 1 week ago

Backport 5724fd30074245127c3ce9f47a7a38c0714c5165 from #11420 to 2.16.

Fixes https://github.com/DataDog/dd-trace-py/issues/11320 .

The resource-based APIs for DynamoDB in boto3 accept deserialized python values and turn them into proper type-tagged DynamoDB API objects in the background. Unfortunately we don't seem to have access to those lower-level type-tagged objects, so if we see the deserialized forms we need to transform them ourselves in order to correctly extract the key values for hashing into span pointers.

Checklist

Reviewer Checklist

apiarian-datadog commented 1 week ago

closing and reopening to kick a few of the tests off again.

github-actions[bot] commented 1 week ago

CODEOWNERS have been resolved as:

.riot/requirements/159f4bb.txt                                          @DataDog/apm-python
.riot/requirements/15e6ff4.txt                                          @DataDog/apm-python
.riot/requirements/15e8745.txt                                          @DataDog/apm-python
.riot/requirements/1793deb.txt                                          @DataDog/apm-python
.riot/requirements/18d037c.txt                                          @DataDog/apm-python
.riot/requirements/1aa24de.txt                                          @DataDog/apm-python
.riot/requirements/921bc6c.txt                                          @DataDog/apm-python
releasenotes/notes/fix-span-pointer-deserialized-dynamodb-requests-39b1235a102dab7c.yaml  @DataDog/apm-python
ddtrace/_trace/_span_pointer.py                                         @DataDog/apm-sdk-api-python
ddtrace/_trace/utils_botocore/span_pointers/__init__.py                 @DataDog/apm-sdk-api-python
ddtrace/_trace/utils_botocore/span_pointers/dynamodb.py                 @DataDog/apm-sdk-api-python
ddtrace/_trace/utils_botocore/span_pointers/s3.py                       @DataDog/apm-sdk-api-python
riotfile.py                                                             @DataDog/apm-python
tests/tracer/utils_botocore/test_span_pointers.py                       @DataDog/apm-sdk-api-python
.riot/requirements/19065a8.txt                                          @DataDog/apm-python
.riot/requirements/1a4f181.txt                                          @DataDog/apm-python
datadog-dd-trace-py-rkomorn[bot] commented 1 week ago

Datadog Report

Branch report: backport-11420-to-2.16 Commit report: c6f81a8 Test service: dd-trace-py

:white_check_mark: 0 Failed, 1286 Passed, 0 Skipped, 30m 26.93s Total duration (7m 13.82s time saved)

pr-commenter[bot] commented 1 week ago

Benchmarks

Benchmark execution time: 2024-11-19 15:48:31

Comparing candidate commit c6f81a847cec8dd88c7c1552d3487af9e9a6f470 in PR branch backport-11420-to-2.16 with baseline commit 7772f776a0a9dc4b4941ffa3df4c7663848fc9a5 in branch 2.16.

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