Is it possible to set a specific interval on which an alert performs its evaluation? If it is set to evaluate every 5m, can I set “starting at the next minute/interval (i.e., 4:45:00)”?
We have data streaming limitations that make the timing of the alert evaluation very important.
If there’s a way to do this, it would help me out. If there isn’t, might there be in the future?
There is no feature to align evaluation periods, you can only set the interval but have no control that this aligns perfectly with even minutes or with a specific time of day.
Alert rules are scheduled so that they do not overlap in execution, so they execution is spread out. If you have 1000 alert rules that should execute every 5m then the rules will executed on different seconds in that 5min window in order to now execute all rules at the same time and overload the time series database.
Thanks for the quick answer!
In order to understand exactly when an alert is evaluating, would I need to use the Alerting API to check?
We were initially thinking that execution timing might have something to do with the timing of hitting “save” on the dashboard after configuring settings. It sounds like there is absolutely no way a user can control this timing though, correct?
I think it is possible to control “start time” of alert interval to some extent.
You can go to alerts Grafana menu, find your alert, pause it and resume it at preferred time, it should start first evaluation immediately and continue from there onwards.
Although over time it will go out of sync most probably, especially if alert interval is small. Planning to use this approach in our case with 1 day interval where we don’t require big precision.