Hello DOJO
I need to set a condition on an alarm template line
I want to determine a condition by comparing the content of 2 lines from a table
How do I use single row parameter to have a comparison between the value of the line 1 and the line 2 of my table ?
Each value I set is replaced by "All rows" after saving the condition
I have tried with index number, with or without key, and content string but it failed
The "Using conditions in an alarm template" documentation doesn't speak about this parameter
Salut, Joel
Is the info at this link of any help?
https://docs.dataminer.services/user-guide/Basic_Functionality/Protocols_and_templates/Alarm_templates/Configuring_alarm_templates.html
Scroll down to this section:
The key bit is that monitoring is disabled if the condition you specify is true, as displayed in the GUI of the Alarm Template section in Cube:
Comparing would then be a matter of identifying the correct logical condition you need: it's rather the "union" (="OR") or the "intersection" (= "AND") of the two lines that becomes relevant to build your conditional monitoring.
Most protocols are ok when your condition is based on values in the same table - if the condition has to be based on values in a different table, I'd recommend some ad-hoc testing.
HTH
Is each line a row parameter?
I’d expect you can define a condition on each parameter and combine them with the usage of “AND” & “OR” ~ pretty much what you’ve shown in the screenshot ~ what I don’t get is the “All parameters” issue you’ve mentioned ~ each line is a single line in the Alarm Template, conditions are specific to that line.
To be more precise
The protocol used is : generic HTTP query
HTTP query response parameter is a table and contains for each line the response sent by each server
Each line represents a web server to be tested (200,404, 500, etc.)
What I want to evaluate, is the content of the response of each server (line), to determine the status of each server based on text pattern
So,
if server one is master, and server two is also master it’s raise an alarm,
if server One is monitor and server two is master no alarm raised, etc.
This is why I need to be able to put a condition for each line separately
If I use a condition, it is evaluated for all lines of the table
By example
If I search for text “monitor”, it’s searched in all lines
Then if one line contains monitor and one other line contains master
Or if a line contains monitor and an other contains also monitor, the condition is always evaluated to true
Then if I understand correctly, you are not using the “condition” to disable an alarm that would be otherwise present – perhaps, for this use-case, it’s worth testing also an approach based correlated alarms – e.g. generate an info event for each server becoming master – and escalate the event to an alarm where two masters are present in the same pair – just for curiosity: isn’t the underlying engine able to mange this? If so, you might have a different parameter to monitor if this kind of conflict appears.
I think it’s not possible to make a comparison by using one row in this case
the documentation says :
Note also that if the monitored table and the table used in the condition are the same or are not related, the condition will be applied to all cells in the monitored column, but only when the cell specified in the condition changes. If the two tables are related, the condition will apply to all cells in the monitored column that are linked to the row containing the cell specified in the condition.
I am going to follow your advice, Thank you Alberto
Hi Alberto
thank you for this answer
I already read this documentation
usually I use the conditional option without any problem by combining several parameter with AND and OR and Value with equal, match, not match and so on
Now, I have a table, and I need to match in this table, let’s say:
line1=A AND line6=B
So I want to be able to put conditions on specific lines on the same table by using Single row in place of All rows