-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
stop_learning_time does not work #1323
Comments
could you please extend the test by having a line with a new status code (for example as the last one)? |
I added a line with status code 999:
Persisted values:
|
The issue is that stop_learning_time does not work on historical data, because it is defined in InputInterfaces.AtomHandlerInterface as The issue why this can not be defined within each analysis component is that the learning should stop exactly after 3600 seconds, which would only work for the analysis component that has seen the first log atom. So the feature works as intended, because we do not have any data at the initialization stage of the aminer. The same bug also happens for the To at least provide a solution for this issue, I introduce the Output after fix:
|
I do not understand why time.time() is used - as discussed in issue #1230 the stop_learning_time should be based on the time from the logs, and not the real time. Also, I think it is fine if the stop_learning_time is set using the first log atom that is processed by any of the analysis components. |
Sorry, I don't really know what happened in #1230 - this was a year ago. We both just know that it is not working in the desired way at the moment. Please help me clarifying the desired functionality: do you want to have one time at which all of the anomaly detectors stop (for example first seen log atom + 3600 seconds) or should each anomaly detector have it's own time when to stop (this means that one detector might stop after a hour and another detector might stop after 2 days). If we implement the second example where the stop time is really managed by the detector, this is no issue for me (besides a lot of refactoring). |
If we use the AminerStartTimestamp, we could just as well set the time where the AMiner switches the training mode in absolute timestamps. However, we introduced the stop_learning_time because we did not want to make it necessary to state an absolute timestamp when the AMiner should switch off the training mode - especially when the config is reused on several data sets, this will just be a big source of error. I would pursue the second case, since this is how it was originally implemented and how the functionality worked after #1230. Since each detector receives every log line (unless one starts using atom filters), it is usually the case that all detectors will switch learn mode at the same time as they all receive the same first line. |
Original issue: #831
Fix: #1230
Now this feature is not working anymore.
Set learning to stop after 1 hour:
For the first two lines, learning should be active, then switched off:
However, learning is never switched off (300 should be detected twice as new value):
The text was updated successfully, but these errors were encountered: