Track a chain of Celery tasks as a single request

Open
#373 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
python

Research direction

Start by reading the use of scout_apm.api.BackgroundTask in the Celery integration and tracing how context is passed between chained tasks. Define and verify behavior for a Task-One, Task-Two, and Task-Three chain so the entire chain is represented as one request rather than separate or missing instrumentation.

Written by the indexing model from the issue text.

Description

The use case:

Trying to manually instrument the start and stop of a background celery task that is a chain of Celery tasks and we want to instrument the full chain.

Task-One starts, does some work and completes, handing over the rest of the work to Task-Two. Task-Two does some work, completes and passes off the next bit of work to Task-Three and so on.

The details are handed over to the next task as arguments. Initializing the scout_apm.api.BackgroundTask object in Task-One and sending the details as an argument doesn't work as the variable passed to Task-Two is None.

Dominant language
Python
Stars
77
Forks
19
Avg merge
1d 9h
Merged PRs (30d)
5

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from scoutapp/scout_apm_python

All issues in scoutapp/scout_apm_python

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.