getappmap / getappmap/appmap-python
Record-by-default creates an AppMap for a function that is run using multiprocessing
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 104
- Forks
- 17
- PR merge metrics
- No merged PRs in 30d
Description
Currently, a function that's run using the multiprocessing package is instrumented, but there's no way to generate an AppMap for it. This means, for example, that the events property in the AppMap printed by mp/mp.py in https://github.com/getappmap/appmap-python/issues/200#issue-1477421807 will be empty.
appmap-python should generate multiprocessing recordings automatically, analogous to request recordings. A recording should be started before the function is run, and an AppMap created when it returns.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the multiprocessing example in mp/mp.py and compare its empty events output with the request-recording behavior referenced in the issue. Trace where the function is instrumented and where recordings are started and finalized. Done means multiprocessing functions automatically produce an AppMap with their events when the function returns.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- devtools
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100