getsentry / getsentry/sentry-python
Had to manually create a transaction to see agent spans when using `asyncio.create_task`
- 主要语言
- Python
- 星标
- 2.2k
- 派生
- 669
- 平均合并
- 1 天 1 小时
- 30 天内合并 PR
- 213
描述
Some asyncio tasks outlive the transaction that was running when they were created, and the spans they create are never sent.
Fabian: Investigated the issue. `create_task` is like spawning a thread that lives longer than the transaction of the HTTP server. So without a manual transaction, the HTTP server transaction is already closed before the agent can add spans to it, resulting in the span being dropped without notice.
Solutions:
- Span first will send the trailing spans -- but will the pipeline support storing and showing them, especially if they come quite late after the transaction finishes?
- Native support for background tasks like https://github.com/getsentry/sentry-python/issues/1473
- Wrap in a manual transaction
_Copied from https://linear.app/getsentry/issue/PY-2292/had-to-manually-create-a-transaction-to-see-agent-spans-when-using which didn't get synced to GH_
贡献指南
评估
这个 Issue 还没有评估数据。