Skip to content
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

[groups] Boolean OR operand to get notification for total failure of redundant systems #3387

Open
1 task done
ChrissoChrisso opened this issue Jul 8, 2023 · 6 comments
Open
1 task done
Labels
area:monitor Everything related to monitors feature-request Request for new features to be added type:new proposing to add a new monitor

Comments

@ChrissoChrisso
Copy link

ChrissoChrisso commented Jul 8, 2023

⚠️ Please verify that this feature request has NOT been suggested before.

  • I checked and didn't find similar feature request

🏷️ Feature Request Type

New Monitor

🔖 Feature description

This feature would allow notification of total failure of redundant systems.

Many networking protocols (eg. NTP, DNS, RADIUS, TACACS+, SNMP, etc...) allow for use of multiple redundant server IP addresses with a goal of offering resiliency. A use case for this new feature would be to Group monitor all redundant IP addresses for a given protocol or system, and be notified in case of simultaneous failure of all redundant servers in that Group.

For example, a Primary NTP server IP address and a Secondary NTP server IP address could be added to a Group, which notifies Down only while both the primary and secondary IPs are simultaneously down to inform that NTP service is totally down.

Currently in version 1.22.1 the Group functionality monitors Group members using the AND operand, meaning if Group members (a) AND (b) AND (c) are up, the Group reports as UP. If one of the redundant IPs are down, the Group undesirably reports as down, even thought the service overall still works because of the redundant IPs that are still up...

This feature request is to allow Groups to be monitored using the OR operand, meaning if Group members (a) OR (b) OR (c) are up, the Group reports as UP. If Uptime-Kuma followed the OR operand rather than the AND operand while group monitoring, it would enable notifications for total failure of redundant systems.

Initially I raised this as a configuration help question, and it was suggested to add as a feature request #3382

Many thanks for this awesome software. If any questions, or ideas please ask.

✔️ Solution

An implementation idea that maybe would be easy? is to split the single "Group" option here:
image

into 2 options: "Group (using Boolean AND)" and "Group (using Boolean OR)".
"Group (using Boolean AND)" would match the current functionality which appears to follow the AND operator.
"Group (using Boolean OR)" would match the desired functionality of using the OR operator.

Again, many thanks for your help, and I really appreciate this cool software.

❓ Alternatives

To my knowledge, work-arounds to achieve this do not exist.

📝 Additional Context

If any questions, please ask. I really appreciate this software.

@ChrissoChrisso ChrissoChrisso added the feature-request Request for new features to be added label Jul 8, 2023
@ChrissoChrisso ChrissoChrisso changed the title Group monitoring with a Boolean OR operand to get notification of total failure of redundant systems Group monitoring with a Boolean OR operand to get notification for total failure of redundant systems Jul 8, 2023
@stephen304
Copy link

stephen304 commented Jul 12, 2023

I would also like this, I have a group which used to be separate ungrouped monitors which check if the internet is accessible with an HTTP request to popular sites. This in general works OK, but occasionally I get a false alarm because facebook or google will have a transient issue which erroneously pings me.

I would prefer to be able to set up all my checks in an OR group so that only if ALL of the internet checks fail then it considers the group down. That way I will only get a notification if google, amazon, facebook, apple are all simultaneously down which would indicate my internet is actually out (of course this would need to be combined with a LAN-only notifier or used in conjunction with a failover wan for notifications, an exercise for the reader).

Another potential use case is for a cluster of redundant nodes that are load balanced, using an OR group would allow receiving a down status / notification only if all the nodes are down - which might be desired if someone wants to be able to reboot individual nodes without triggering a notification.

@brunialti
Copy link

One more use case for "or"ed groups:
I would use them for presence detection, grouping all ips (pc, mobile, …) used by family members: if at least one is active that member is at home.

@palanthas
Copy link

Another for the "or" logic.

We have several machines we monitor that have two or more IPs they could be using depending on the network or VPN they're connecting to. So long as at least one of the IPs are working they're good, but if all of the IPs are down then we want to know.

@thib3113
Copy link

thib3113 commented Oct 5, 2023

In addition, I think it can be interessting to improve the current "group" monitor type (and not creating a new one) by adding some condition like :

"how many hosts down to trigger ?"
( so, you can choose an alert before all is down / and this condition can be "all" to do an OR, or "1" to do a AND )

@brunialti
Copy link

No feedbacks by the mantainers about this request topic?
@louislam

@CommanderStorm
Copy link
Collaborator

Related #1089 #2487

@CommanderStorm CommanderStorm added the area:monitor Everything related to monitors label Dec 5, 2023
@CommanderStorm CommanderStorm added the type:new proposing to add a new monitor label Dec 9, 2023
@CommanderStorm CommanderStorm changed the title Group monitoring with a Boolean OR operand to get notification for total failure of redundant systems [groups] Boolean OR operand to get notification for total failure of redundant systems Dec 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:monitor Everything related to monitors feature-request Request for new features to be added type:new proposing to add a new monitor
Projects
None yet
Development

No branches or pull requests

6 participants