elastic / elastic/apm-agent-python

Aiobotocore invalid timings

Open
#2,356 0 comments 0 reactions 0 assignees View on GitHub
agent-python community triage
Dominant language
Python
Stars
431
Forks
239
Avg merge
5d 10h
Merged PRs (30d)
7

Description

## **Description of the bug**
The Elastic APM agent reports incorrect timing for operations involving aiobotocore. Because aiobotocore performs asynchronous I/O using boto3, the measured span duration reflects only a small part (1–2 seconds) of the actual time required to download a file. As a result, the reported duration is significantly shorter than the true elapsed time.

## **To Reproduce**
1. Set up Elastic APM agent in a project using aioboto3 or aiobotocore.
2. Upload a large file (e.g. >50 MB) and download it from code using `await s3_client.get_object(...)` (you also need to read the response) or similar.
3. Observe the reported span duration in the APM dashboard (e.g. Kibana).
4. Compare it with the actual download time measured independently (e.g. `await` + `time.perf_counter_ns()`).

## **Environment**
- OS: Linux
- Python version: 3.12
- Framework and version: FastAPI 0.115.14
- APM Server version: N/A
- Agent version: 6.22.3

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.