[GH-ISSUE #167] [FEATURE REQUEST] WebUI of server states (like sidekiq's UI) #1065

Closed
opened 2026-03-07 22:05:03 +03:00 by kerem · 11 comments
Owner

Originally created by @zhaolion on GitHub (Jun 10, 2020).
Original GitHub issue: https://github.com/hibiken/asynq/issues/167

Originally assigned to: @hibiken on GitHub.

We could offer a cmd for serving a comprehensive Web UI for management and monitoring

Describe the solution you'd like
maybe we can add a sub cmd in asynq. eg. asynq webui.

eg. https://raw.githubusercontent.com/mperham/sidekiq/master/examples/web-ui.png

Originally created by @zhaolion on GitHub (Jun 10, 2020). Original GitHub issue: https://github.com/hibiken/asynq/issues/167 Originally assigned to: @hibiken on GitHub. We could offer a cmd for serving a comprehensive Web UI for management and monitoring **Describe the solution you'd like** maybe we can add a sub cmd in asynq. eg. `asynq webui`. eg. https://raw.githubusercontent.com/mperham/sidekiq/master/examples/web-ui.png
kerem 2026-03-07 22:05:03 +03:00
Author
Owner

@hibiken commented on GitHub (Jun 10, 2020):

Yes, this is definitely in the project's roadmap!

Issue #50 is related to this one (I think it's good time to start working on this since the internal has been stable for a while now). I haven't decided whether we want to have that as a command in the CLI or standalone thing in a separate repo.

Thanks for opening this issue. I'll prioritize this one because it adds much value to the users.

<!-- gh-comment-id:642091589 --> @hibiken commented on GitHub (Jun 10, 2020): Yes, this is definitely in the project's roadmap! Issue #50 is related to this one (I think it's good time to start working on this since the internal has been stable for a while now). I haven't decided whether we want to have that as a command in the CLI or standalone thing in a separate repo. Thanks for opening this issue. I'll prioritize this one because it adds much value to the users.
Author
Owner

@zhaolion commented on GitHub (Jun 11, 2020):

Yes, this is definitely in the project's roadmap!

Issue #50 is related to this one (I think it's good time to start working on this since the internal has been stable for a while now). I haven't decided whether we want to have that as a command in the CLI or standalone thing in a separate repo.

Thanks for opening this issue. I'll prioritize this one because it adds much value to the users.

The plan of standalone thing in a separate repo maybe a better choice. I have a sugguestion, maybe we can rename pkg asynq/internal as asynq/pkg, so a standalone server connect to asynq/server or redis by using internal/rdb

<!-- gh-comment-id:642367565 --> @zhaolion commented on GitHub (Jun 11, 2020): > Yes, this is definitely in the project's roadmap! > > Issue #50 is related to this one (I think it's good time to start working on this since the internal has been stable for a while now). I haven't decided whether we want to have that as a command in the CLI or standalone thing in a separate repo. > > Thanks for opening this issue. I'll prioritize this one because it adds much value to the users. The plan of standalone thing in a separate repo maybe a better choice. I have a sugguestion, maybe we can rename pkg `asynq/internal` as `asynq/pkg`, so a standalone server connect to asynq/server or redis by using `internal/rdb`
Author
Owner

@hibiken commented on GitHub (Jun 11, 2020):

I see. I had similar idea in mind with #50 . Currently we have inspect.go file in the internal/rdb package, but I'd like to extract that out into its own package and make its API public (other parts of internal packages are not public API, so they need to stay under the directory named internal).

I haven't settled on the package name yet, but I'm leaning towards github.com/hibiken/asynq/x/inspect or github.com/hibiken/asynq/pkg/inspect or github.com/hibiken/asynq/contrib/inspect

<!-- gh-comment-id:642390751 --> @hibiken commented on GitHub (Jun 11, 2020): I see. I had similar idea in mind with #50 . Currently we have `inspect.go` file in the `internal/rdb` package, but I'd like to extract that out into its own package and make its API public (other parts of `internal` packages are not public API, so they need to stay under the directory named `internal`). I haven't settled on the package name yet, but I'm leaning towards `github.com/hibiken/asynq/x/inspect` or `github.com/hibiken/asynq/pkg/inspect` or `github.com/hibiken/asynq/contrib/inspect`
Author
Owner

@zhaolion commented on GitHub (Jun 11, 2020):

I see. I had similar idea in mind with #50 . Currently we have inspect.go file in the internal/rdb package, but I'd like to extract that out into its own package and make its API public (other parts of internal packages are not public API, so they need to stay under the directory named internal).

I haven't settled on the package name yet, but I'm leaning towards github.com/hibiken/asynq/x/inspect or github.com/hibiken/asynq/pkg/inspect or github.com/hibiken/asynq/contrib/inspect

Got it. github.com/hibiken/asynq/x/inspect is more interesting 🤣

<!-- gh-comment-id:642393832 --> @zhaolion commented on GitHub (Jun 11, 2020): > I see. I had similar idea in mind with #50 . Currently we have `inspect.go` file in the `internal/rdb` package, but I'd like to extract that out into its own package and make its API public (other parts of `internal` packages are not public API, so they need to stay under the directory named `internal`). > > I haven't settled on the package name yet, but I'm leaning towards `github.com/hibiken/asynq/x/inspect` or `github.com/hibiken/asynq/pkg/inspect` or `github.com/hibiken/asynq/contrib/inspect` Got it. `github.com/hibiken/asynq/x/inspect` is more interesting 🤣
Author
Owner

@rrupesh commented on GitHub (Jul 18, 2020):

@hibiken would you consider having the CMD functionality as part of async.Client? It would really be handy to keep track of all the jobs that are running. For example, I'd want to pause all jobs or selectively cancel / restart a job. Having this functionality part of client would be an easy integration with the existing code. client.listAllTasks(), client.stopAllTasks() etc.,

<!-- gh-comment-id:660463540 --> @rrupesh commented on GitHub (Jul 18, 2020): @hibiken would you consider having the CMD functionality as part of `async.Client`? It would really be handy to keep track of all the jobs that are running. For example, I'd want to pause all jobs or selectively cancel / restart a job. Having this functionality part of `client` would be an easy integration with the existing code. `client.listAllTasks()`, `client.stopAllTasks()` etc.,
Author
Owner

@hibiken commented on GitHub (Jul 18, 2020):

@rrupesh thanks for commenting!
Actually I'm currently working on it 😄 All the functionality you get with asynq CLI will be available though a new type called Inspector. This change should be in the next release v0.11.0.

<!-- gh-comment-id:660475954 --> @hibiken commented on GitHub (Jul 18, 2020): @rrupesh thanks for commenting! Actually I'm currently working on it 😄 All the functionality you get with asynq CLI will be available though a new type called `Inspector`. This change should be in the next release v0.11.0.
Author
Owner

@rrupesh commented on GitHub (Jul 18, 2020):

@hibiken Thank you very much! I was using gocraft until this morning. I learnt about your awesome work and it took me about 30 mins to literally migrate from gocraft to asynq. Almost a drop-in replacement. Btw, do you have a donate / buy me a coffee or similar link? lmk!

<!-- gh-comment-id:660553010 --> @rrupesh commented on GitHub (Jul 18, 2020): @hibiken Thank you very much! I was using `gocraft` until this morning. I learnt about your awesome work and it took me about 30 mins to literally migrate from `gocraft` to `asynq`. Almost a drop-in replacement. Btw, do you have a donate / buy me a coffee or similar link? lmk!
Author
Owner

@hibiken commented on GitHub (Jul 19, 2020):

@rrupesh thanks! I may consider adding Github support button to this repo eventually (e.g. when I commit to v1 compatibility). But for now I enjoy working on this project and it's really rewarding to hear feedback on it from people like you. So thank you for your feedback!!

<!-- gh-comment-id:660578857 --> @hibiken commented on GitHub (Jul 19, 2020): @rrupesh thanks! I may consider adding Github support button to this repo eventually (e.g. when I commit to v1 compatibility). But for now I enjoy working on this project and it's really rewarding to hear feedback on it from people like you. So thank you for your feedback!!
Author
Owner

@mingrammer commented on GitHub (Jan 27, 2021):

I'm looking forward to this feature :) Thanks for your efforts.

<!-- gh-comment-id:768391427 --> @mingrammer commented on GitHub (Jan 27, 2021): I'm looking forward to this feature :) Thanks for your efforts.
Author
Owner

@hibiken commented on GitHub (Feb 1, 2021):

I'm happy to announce the initial release of the web UI 🎉
Please checkout Asynqmon repo and follow the installation instructions.

Feedbacks are appreciated!

<!-- gh-comment-id:770609840 --> @hibiken commented on GitHub (Feb 1, 2021): I'm happy to announce the initial release of the web UI 🎉 Please checkout [Asynqmon](https://github.com/hibiken/asynqmon) repo and follow the installation instructions. Feedbacks are appreciated!
Author
Owner

@zhaolion commented on GitHub (Feb 1, 2021):

I'm happy to announce the initial release of the web UI 🎉
Please checkout Asynqmon repo and follow the installation instructions.

Feedbacks are appreciated!

Thanks for your efforts. Will be used soon 🆒

<!-- gh-comment-id:770805115 --> @zhaolion commented on GitHub (Feb 1, 2021): > I'm happy to announce the initial release of the web UI 🎉 > Please checkout [Asynqmon](https://github.com/hibiken/asynqmon) repo and follow the installation instructions. > > Feedbacks are appreciated! Thanks for your efforts. Will be used soon 🆒
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/asynq#1065
No description provided.