-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Group monitors #2693
Group monitors #2693
Conversation
Absolutely incredible, I’ve so long to get this into Kuma thank you so much
|
Finally, some order is brought into my life. |
Awesome .. can you please also share if there is an API which we can use to script existing objects into groups.. |
If I'm seeing it correctly, kuma only has a small amount of API endpoints. Most of them for generating badge SVGs. I don't want to speak for the project maintainers, but I think this is a feature which we can expect somewhere in the future, but currently there isn't an API for this type of automation. In difference to most projects, the kuma frontend gets all data through web sockets. If you really want to script your task, maybe you can connect to this web socket and send commands to it like the frontend client does... But this would be a very tricky task, I think. Or create a python script which clicks for you in the browser. But currently I see no official API support for automation. |
I am using this API => https://pypi.org/project/uptime-kuma-api/0.9.0/ |
Exactly what I said. The creator of this API build its own client which connects to the web socket. So technically it's possible to use groups with this API. But the Maintainer of the API project first has to implement this feature. |
Quickly reviewed most of it and it looks quite reasonable! I don't expect this to be merged anytime soon but:
|
Why do you think that? I mean, it's a bigger feature, but also a long expected from many users.
Currently, there is a client-side check to stop loops. But maybe a server-side check should be added too, to be secure.
I also thought about this. It would stop users from creating their complete own structure, but maybe. The question is how deep should it max go. And should this value be editable using the Settings Page, or an env?
|
I've been waiting for this feature! I'm very excited for this to get merged!! |
Thanks to server- and client-side checks, endless loops should now be impossible. |
It sounds like it is duplicate of #1236? |
Partially. Dependence is just one function of this PR. Only a side functionality. The main feature is the grouping. That the group displays the state of the children only got added because I wanted something to be shown in the group state. But it's very useful. |
It is good to read the pull request rules first next time. A large pull request should have a discussion first. I originally planned to merge #1236 in 1.21.0. While for #1236, it provides many-to-many relation, which means a monitor belong to more than one group. But I don't like the new status So it is hard for me to choose. |
Earlier we discussed about the status being displayed for groups. And the other solution using Dependencies (#1236). Maybe it would be a cool idea to remove this feature from this pr again and put the expand icon in the status position instead. |
This comment was marked as spam.
This comment was marked as spam.
This comment was marked as resolved.
This comment was marked as resolved.
Is someone working on this feature, a dropdown on monitor group in the status page? |
No, nobody is working on this as far as I know. Necroposting on closed PRs is also really not scalable from a project maintanance perspective |
https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma
Tick the checkbox if you understand [x]:
Description
Hello Guys,
I saw that many users requested a grouping feature... and I also wanted one. So I added it.
You can group services however and how deep you like.
The group always takes the state of the worsted child. If all are green and one in red. The whole group will be red.
This means you can set your notification at the parent level and get one message instead of 10 if something is broken.
Also, if you want to do maintenance, you can just set it at the parent and all children go into maintenance too.
The same happens if you pause the group.
To add a group, simply add a monitor and select "group" as its type.
To add monitors to this group, just edit the monitor and select the group in the "monitor group" dropdown.
If you create subgroups, it can look like this:
And of course, if one item in the subgroup fails, the subgroups fails and also the main group itself.
In text fields, subgroups are displayed using slashes like this
Cloud / HTTPS
.And your state, which group is collapsed and which not, gets saved in your browser.
In your status page, you can now simply select the group to get displayed instead of every single service separately.
This makes the status page more simple and better for your normal users.
Fixes:
Type of change
Please delete any options that are not relevant.
Checklist
(including JSDoc for methods)