Repository navigation
Feat/additional info apps #4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from 74 commits
f064cca
1368c4e
fc35b15
b98533b
c88fe64
10ea659
fdbd4e2
02cca8e
20215ad
c132c74
6748239
a999dd4
d782fe0
0e2f20c
2f6dbf3
8ac42af
90121d3
bb7cd2f
4f29ff6
7a5667b
4a3d7a1
191936b
19d0fb4
c54da30
9271c70
d40b29a
9ab7115
0256b64
d39bd85
a017873
2568fed
2396d49
eb2f6e4
ecf7bb4
98b2769
29c0243
0c2d144
d9c286c
f3a22e0
f678517
8c5f62b
ac9dc59
0cc9b68
e532375
d02eda9
6616ae6
5790b4c
b4d53a2
4b9a7f3
8acae27
5132b16
5e14f5c
f0c6b22
9448dc0
ee030ee
9647b17
4d07d7e
aefc892
b1a0914
033cfba
4986b56
757316b
6c59089
9cf500c
d463633
0c72fe2
b11ebf6
599e2fd
082051b
dfa82a3
595910e
a654903
cdec4af
e1fcebc
e3e8cda
8b0cdeb
6b840b7
a9f5f7e
1e8d601
3420f18
76ccb66
99000a1
4ec6a47
7ccbd64
dea0244
4cdb0ec
1e7e326
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,2 @@ | ||
| [build] | ||
| rustflags = ["--cfg", "tokio_unstable"] | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| [package] | ||
| name = "async-debugger" | ||
| version = "0.1.0" | ||
| edition = "2024" | ||
|
|
||
| [dependencies] | ||
| tokio = { version = "1", features = ["rt-multi-thread", "macros", "sync", "time", "tracing", "net" ] } | ||
| console-subscriber = "0.4.1" | ||
|
U-alb marked this conversation as resolved.
|
||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. In fisierul asta as mai vrea sa mai vad urmatoarele sectiuni si modificari:
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. De asemenea, as vrea sa mai vad niste screenshot-uri reprezentative cu aplicatia ca sa fie ceva mai de impact pentru utilizator
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. De asemenea, vreau sa mai avem un mic fisier gen Architecture.md care sa descrie componentele aplicatiei si cum comunica intre ele, dar si ierarhia repository-ului la modul:
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I would add in prerequisites section all the prerequisites:))) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,6 +1,79 @@ | ||
| # AsyncDebugger | ||
| ## AsyncDebugger | ||
|
|
||
| This repository hosts the `AsyncDebugger`, a tool desktop tool that provides | ||
| meaningful insights into asynchronous Rust software. | ||
| AsyncDebugger is a desktop tool that provides **meaningful insights** into asynchronous Rust applications by leveraging | ||
| the `console-api` developed for `tokio-console`. It offers a clean, intuitive user interface to inspect tasks, | ||
| resources, and execution timelines in real time. | ||
|
|
||
| It is based upon the `console-api` developed for `tokio-console`. | ||
| <hr> | ||
|
|
||
| ## Features | ||
|
|
||
| - **Real-time task visualization**: See active, pending, and completed async tasks | ||
|
U-alb marked this conversation as resolved.
Outdated
|
||
| - **Resource usage inspection**: Monitor resources and CPU consumption and scheduling | ||
| - **Polling overview**: Tap into polls and get insights | ||
| - **Custom filtering**: Filter tasks by name, state, or metadata tags | ||
|
U-alb marked this conversation as resolved.
Outdated
|
||
|
|
||
| <hr> | ||
|
|
||
| ## Installation | ||
|
|
||
| 1. Clone the repository | ||
| ```bash | ||
| git clone https://github.com/Wyliodrin/async-debugger.git | ||
| cd AsyncDebugger | ||
| ``` | ||
| 2. Install front-end dependencies | ||
| ```bash | ||
| npm install | ||
| ``` | ||
| 3. Build and launch in development mode | ||
| ```bash | ||
| npm run tauri dev | ||
| ``` | ||
|
|
||
| <hr> | ||
|
|
||
| ## Usage | ||
|
|
||
| 1. Launch AsyncDebugger via `npm run tauri dev`. | ||
| 2. Attach to one of our examples or your own Rust async application by using the Application Overview page in the UI | ||
| - For your application, enable the console API by adding `console-subscriber` to your Cargo.toml and instrumenting | ||
| your code: | ||
|
|
||
| ```toml | ||
| [dependencies] | ||
| console-api = "0.4.1" | ||
| ``` | ||
|
|
||
| ```rust | ||
| #[tokio::main] | ||
| async fn main() { | ||
| console_subscriber::init(); | ||
| // Your application here... | ||
| } | ||
| ``` | ||
|
|
||
| 3. Observe tasks, timelines, and resource metrics | ||
| 4. Apply filters and inspect stack traces to pinpoint performance bottlenecks or logical errors. | ||
|
|
||
| <hr> | ||
|
|
||
| ## Examples | ||
|
|
||
| Example applications live in the `examples/` directory. To run an example: | ||
|
|
||
| ```bash | ||
| cargo run --example <example_name> | ||
| ``` | ||
|
|
||
| - `0s1s` spawns three asynchronous tasks: | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. bullet point listing is a bit unclear, I would enumerate |
||
| 1. A producer that sends 1024-byte zero-filled chunks every 500 ms. | ||
| 2. A producer that sends 1024-byte one-filled chunks every 700 ms. | ||
| 3. A consumer that concurrently reads from both channels and logs incoming data. | ||
|
|
||
| It can be tracked at `localhost:6669` | ||
|
|
||
| - `tasks` waits for user input to start, then spawns three tasks that simulate work, wait on a common barrier, and then | ||
| proceed together. | ||
|
|
||
| It can be tracked at `localhost:7777` | ||
Uh oh!
There was an error while loading. Please reload this page.