Open maxhniebergall opened 8 months ago
Pinging @elastic/ml-core (Team:ML)
Currently, we test for time shifts including +/- 1 hr and as soon as we are confident update the model. Unfortunately, in the case of DLS we do not suppress the anomalies whilst this is happening and it takes us some time to be confident there has been a shift.
Some thoughts:
A possible enhancement:
Allow users to specify a calendar to use for DLS (i.e. which days to expect it to occur). On the DLS event day we would
[ 3. Try and learn the DLS calendar which applies to the job.]
Point 2 is important since any event which is actually a DLS time shift should then generate no anomalies, but we would not disable detection altogether.
Point 3 is a nice to have which allows for no configuration, but adds additional implementation complexity and does still need some time to learn the calendar, so users would have to accept anomalies on the first few DLS events.
I had a look through the code. We already support event type correctly in the anomaly detection backend so supporting skip_result
for scheduled events simply requires us to:
skip_model_update
)skip_model_update
. (We already pass these events as detection rules, so this doesn't require us to change the Java to autodetect communication.)This is relatively low effort and we should do this first.
Description
Annual time changes for daylight savings happen at different times in different parts of the globe, and cause changes in usage (relative to the time of day) which can cause false-positive anomaly alerts. This feature request is to discuss improving the handling of annual time changes to avoid or reduce false-positive alerts.