typelevel / typelevel/cats-effect
Feature Request: Implement a Debugging and Profiling Tool Similar to Tokio-Console
Nobody has claimed this yet.
- Dominant language
- Scala
- Stars
- 2.2k
- Forks
- 576
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 18
Description
I am writing to propose the implementation of a feature similar to the tokio-console used in asynchronous Rust applications. This tool has proven to be extremely useful for collecting and displaying in-depth diagnostic data on asynchronous tasks, resources, and operations in an application.
Viewing details for a single task:
In Cats-Effect, we already have the ability to remotely trigger fiber snapshots (see LiveFiberSnapshotTriggerMBean.scala) and expose some coarse metrics in various MBeans (see ComputePoolSamplerMBean.scala). These can be accessed by tools, but a more integrated and user-friendly tool like tokio-console would be a great addition to the ecosystem.
I believe that the implementation of a similar tool for Cats-Effect would greatly enhance the debugging and profiling experience for developers. I look forward to hearing your thoughts on this proposal.
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 by reading LiveFiberSnapshotTriggerMBean.scala and ComputePoolSamplerMBean.scala to understand the existing diagnostic entry points, then compare the requested capabilities with tokio-console. Done would require a defined, integrated Cats-Effect debugging and profiling tool, but this proposal does not specify its scope or implementation boundaries.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scala
- Domain
- observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100