I'm currently trying to fetch information from all events that occurred in a given time span. I'm only getting information about the first occurrence. Has anyone experienced this as well and found a solution to it?
Objective:
- A user deletes one or more elements
- In a period of one minute, I want to get all related information events by using an Alarm Filter
- After this time span, I would like to execute an Automation Script
- The Script would need to fetch information from all the occurred events.
Problem:
Step 1 to 3 is working. At step 4, I am only getting information about the first event that has occurred.
Correlation Rule:
Note: Alarm Grouping is used, so the Script only executes once per DataMiner for multiple occurrences. Removing the grouping didn't change anything.
At the moment this is not possible through the available functionality in the Automation module.
There is a way to request the buckets through the 'GetCorrelationStatusMessage'.
Most likely you will be able to request the data you want, if you have the ID of your correlation rule.
Keep in mind that the use of SLNet messages is on your own risk.
It is possible that SLNet messages get changes/removed over different DataMiner versions.
For Martin:
Hi Michiel, Jarno,
I found this thread while working on a similar request and I have an issue.
I'm trying to execute an automation script upon every new element creation, however, the script should be executed with a delay of 3 minutes after element was created (to fetch some initial data, etc).
I trigger the rule based on an information event coming from the "DataMiner Element Control Protocol" with value "Element created" and have the "Collect events for 3 minutes after first event" enabled.
This works great – if there is only 1 element created in the 3 minute window.
If there are more elements created within the collection window, the second and any subsequent event does not start the script.
Do you have any suggestion on how to simply delay the execution of an automation script based on an information event for 3 minutes independently from other (following) events?
Thank you.
Hi Martin,
I assume you want to have a look at this question: https://community.dataminer.services/question/correlation-rule-collects-historical-alarms/
Let me know if you are able to retrieve all alarm/information events within your bucket. Or if you are actually trying to achieve something else
Simply put: I'd like to execute an automation script based on a information event but with a delay of 3 minutes. And, if an event matching same filter occurs with the delay, the script needs to be executed again independently. I am not able to achieve this, due to reasons described above.
Is there a quick answer to this please?
Thanks.
Simple way is to put a sleep in your automation script "engine.Sleep(180000);" and use the immediate evaluation in your correlation rule. Note that if you have a lot of events in 3min (e.g. connector update or DMA restart) that you might end up with a lot of scripts running at the same time.
Thanks for your suggestion Michiel. I’ve got it to work with this message. I wasn’t able to identify the bucket (filter), but I just filtered on the Correlation Rule and while processing, I have found the correct bucket based on the Alarm ID I received in my incoming script parameter information. In the bucket, I could find all the information events that I needed.