-
Problem report
-
Resolution: Fixed
-
Trivial
-
6.0.15rc1, 6.2.9rc1, 6.4.1rc1, 7.0.0alpha1
-
Sprint 98 (Mar 2023), Sprint 99 (Apr 2023), Sprint 100 (May 2023), Sprint 101 (Jun 2023)
-
1
Problem description: it looks like the Conditions in service actions are mixed up between frontend and server. For example, there are 2 Services: "1" and "2" if in frontend we make a condition that action should be executed if Service is not equal to "1", then action will be executed if service "1" changes status to problem, and will not be executed if service "2" will change status to problem.
Furthermore it looks like for recovery operation there is no such issue - now if service action message is triggered then recovery message will be sent only if there is no such action condition.
Steps to reproduce:
- Create a host with an item and a trigger - the trigger shoulg have a specific tag
- Create two services:
"Excluded service" service without a problem tag
"Service to trigger action" service with the same tag as the trigger has - Create a service action that will send a message to Admin if service changes status to problem and also if it changes its status from problem to OK.
- This action should have the following condition:
Type: Service
Operator: does not equal
Services: "Excluded service" - Make sure that Admin user has media defined and that the corresponding media type has Service related message templates.
- Set trigger in status problem - make sure that service "Service to trigger action" also changed status to problem.
- Check Action log
Result 1: Action to send message to Admin user was not executed - Open the previously created action and change condition to:
Type: Service
Operator: does not equal
Services: "Service to trigger action" - Set service "Service to trigger action" to OK status
- Set service "Service to trigger action" to Problem status
- Check Action log
Result 2: Action triggered a message to Admin user, even though the action condition states that it shouldn't do this specifically for this service.
Expected: if condition states that action should not be executed for a specific service, than it should be executed for other services and should not be specifically for this service.