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

New expressions from boolean algebra #1068

Open
Mordecaine opened this issue Sep 27, 2024 · 8 comments
Open

New expressions from boolean algebra #1068

Mordecaine opened this issue Sep 27, 2024 · 8 comments
Labels
area/ui Affects the user interface enhancement New feature or improvement TBD To be defined - We aren't certain about this yet
Milestone

Comments

@Mordecaine
Copy link

In the old web interface (monitoring plugin) you were able to set the filter logic with OR and AND. Now there are ANY and ALL.
All my colleges are confused what these kinds of expressions mean.

I think there is a reason (even if it is not clear to me) to change the expressions AND and OR to the ANY and ALL. But is it possible to add the old expressions as well? Maybe in brackets near to the old expressions?
icinga_filter

@Mordecaine Mordecaine changed the title Boolean filter New expressions from boolean algebra Sep 27, 2024
@nilmerg
Copy link
Member

nilmerg commented Sep 30, 2024

any == or
all == and
and == all
or == any

Does any of these expressions match?
Do all of these expressions match?

The new labels were chosen to reflect natural language.

@nilmerg nilmerg closed this as not planned Won't fix, can't repro, duplicate, stale Sep 30, 2024
@Mordecaine
Copy link
Author

But the most people, who use icinga, are people who work in the IT sector.

I ask my colleagues in the last meeting (30 people all adminstrators or developers) and no one was able to understand the "natural language"

I don't say that you should delete the new "natural language" I only say to complement the Boolean expressions.

@nilmerg
Copy link
Member

nilmerg commented Sep 30, 2024

We'll perform our own poll to come to a solution ;)

@nilmerg nilmerg reopened this Sep 30, 2024
@nilmerg nilmerg added the upvotes-needed We cannot envision a place on our roadmap yet. You could help us with that! The more the merrier... label Sep 30, 2024
@davekempe
Copy link

The wording on the filters have always been confusing to me. As a native English speaker, both ANY and OR are confusing. The right thing to do is to simply use more words. You have plenty of space.

Any of the following conditions match:
However, from this list, only include these:

I don't even know if those words match the example given, thats how much it doesn't make sense to me.
I often find myself avoiding that dialogue box, as I can't explain it to my customers. As a result, the Icingaweb filters aren't used very much for my staff and customers.

@nilmerg
Copy link
Member

nilmerg commented Oct 7, 2024

Thanks for your input Dave!

The polls are closed, people have voted, we'll change it. (Not yet sure how, though)

@nilmerg nilmerg added enhancement New feature or improvement area/ui Affects the user interface TBD To be defined - We aren't certain about this yet and removed upvotes-needed We cannot envision a place on our roadmap yet. You could help us with that! The more the merrier... labels Oct 7, 2024
@nilmerg nilmerg added this to the 1.2.0 milestone Oct 7, 2024
@stevie-sy
Copy link

After my vacation came into this request. We very much welcome this change to the requested behaviour, because we had as well some "problems" with this new operators after change to IcingaDB. That is why I would like to add our thoughts here also.

So we are the same opinion like @Mordecaine that most - maybe all - Icinga users are from the IT sector or with IT background.
e.g. no one of our office workers will use Icinga at all. For them it is important that they can do their daily work for our customers, with the systems we provide for that.

Only our colleagues from the security, network, db and server admin are using Icinga, to control if their systems working well. So everybody of these colleagues have experiences with query languages like SQL or scripting/programmling languges like C, C#, Java, Perl, Python, PHP, Bash etc. pp. So the question at this point is why to change to a "natural langauge"? Therefore, one should instead (or in addition) focus on those languages ​​that an IT professional knows. And from this point IT admins know the meaning of OR/AND very good for joining different conditions in SQL queries or if condition.

If these languages ​​were to undergo such a breaking change, it would also take some getting used to. e.g.

  • SELECT * FROM a WHERE (a.firstname = 'aaa' ALL a.lastname = 'bbb') ANY (a.firstname = 'xxx' ALL a.lastname = 'yyy')
  • if (a.firstname === 'aaa' ALL a.lastname === 'bbb') ANY (a.firstname === 'xxx' ALL a.lastname === 'yyy') { do something }

At the first glace, looking strange/unusual, isn't it?

So we are appreciate the decision to change this and looking forward to the update ;-)

@nilmerg
Copy link
Member

nilmerg commented Oct 15, 2024

It would rather be: SELECT * FROM a WHERE ANY(ALL(a.firstname = 'aaa', a.lastname = 'bbb'), ALL(a.firstname = 'xxx', a.lastname = 'yyy'))
This is, coincidentally, exactly how the UI displays the logical grouping. Which is why the new labels were chosen in the first place.

@idandr
Copy link

idandr commented Oct 22, 2024

Well, the one line representation of the filter uses & and |. I am used to interpret and spell this as "and" and "or".
The monitoring module used AND and OR in the filter editor. Both presentations matched.
In contrast, the icingadb-web module uses ALL and ANY in the Adjust Filter modal dialog. It is totally valid, but a different wording to represent the same idea. I would be happy to get rid of this additional mental context switch. ;-)

Maybe one could add the short representation in the Adjust Filter modal dialog dropdown boxes: "ALL (&)", "ANY (|)" and "NONE (!)"
This would bring a visual connection between short and expanded representation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/ui Affects the user interface enhancement New feature or improvement TBD To be defined - We aren't certain about this yet
Projects
None yet
Development

No branches or pull requests

5 participants