ml-configuring-alerts.asciidoc 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. [role="xpack"]
  2. [[ml-configuring-alerts]]
  3. = Generating alerts for {anomaly-jobs}
  4. beta::[]
  5. {kib} {alert-features} include support for {ml} rules, which run scheduled
  6. checks on an {anomaly-job} or a group of jobs to detect anomalies with certain
  7. conditions. If an anomaly meets the conditions, an alert is created and the
  8. associated action is triggered. For example, you can create a rule to check an
  9. {anomaly-job} every fifteen minutes for critical anomalies and to notify you in
  10. an email. To learn more about {kib} {alert-features}, refer to
  11. {kibana-ref}/alerting-getting-started.html#alerting-getting-started[Alerting and Actions].
  12. [[creating-anomaly-alert-rules]]
  13. == Creating a rule
  14. You can create {ml} rules in the {anomaly-job} wizard after you start the job,
  15. from the job list, or under **{stack-manage-app} > {alerts-ui}**. On the *Create
  16. rule* window, select *{anomaly-detect-cap} alert* under the {ml} section, then
  17. give a name to the rule and optionally provide tags.
  18. Specify the time interval for the rule to check detected anomalies. It is
  19. recommended to select an interval that is close to the bucket span of the
  20. associated job. You can also select a notification option by using the _Notify_
  21. selector. An alert remains active as long as anomalies are found for a
  22. particular {anomaly-job} during the check interval. When there is no anomaly
  23. found in the next interval, the `Recovered` action group is invoked and the
  24. status of the alert changes to `OK`. For more details, refer to the
  25. documentation of
  26. {kibana-ref}/defining-alerts.html#defining-alerts-general-details[general rule details].
  27. [role="screenshot"]
  28. image::images/ml-anomaly-alert-type.jpg["Creating a rule for an anomaly detection alert"]
  29. Select the {anomaly-job} or the group of {anomaly-jobs} that is checked against
  30. the rule. If you assign additional jobs to the group, the new jobs are
  31. automatically checked the next time the conditions are checked.
  32. You can select the result type of the {anomaly-job} that is checked against the
  33. rule. In particular, you can create rules based on bucket, record, or influencer
  34. results.
  35. [role="screenshot"]
  36. image::images/ml-anomaly-alert-severity.jpg["Selecting result type, severity, and test interval"]
  37. For each rule, you can configure the `anomaly_score` that triggers the action.
  38. The `anomaly_score` indicates the significance of a given anomaly compared to
  39. previous anomalies. The default severity threshold is 75 which means every
  40. anomaly with an `anomaly_score` of 75 or higher triggers the associated action.
  41. You can select whether you want to include interim results. Interim results are
  42. created by the {anomaly-job} before a bucket is finalized. These results might
  43. disappear after the bucket is fully processed. Include interim results if you
  44. want to be notified earlier about a potential anomaly even if it might be a
  45. false positive. If you want to get notified only about anomalies of fully
  46. processed buckets, do not include interim results.
  47. You can also configure advanced settings. _Lookback interval_ sets an interval
  48. that is used to query previous anomalies during each condition check. Its value
  49. is derived from the bucket span of the job and the query delay of the {dfeed} by
  50. default. It is not recommended to set the lookback interval lower than the
  51. default value as it might result in missed anomalies. _Number of latest buckets_
  52. sets how many buckets to check to obtain the highest anomaly from all the
  53. anomalies that are found during the _Lookback interval_. An alert is created
  54. based on the anomaly with the highest anomaly score from the most anomalous
  55. bucket.
  56. You can also test the configured conditions against your existing data and check
  57. the sample results by providing a valid interval for your data. The generated
  58. preview contains the number of potentially created alerts during the relative
  59. time range you defined.
  60. [[defining-actions]]
  61. == Defining actions
  62. As a next step, connect your rule to actions that use supported built-in
  63. integrations by selecting a connector type. Connectors are {kib} services or
  64. third-party integrations that perform an action when the rule conditions are
  65. met.
  66. [role="screenshot"]
  67. image::images/ml-anomaly-alert-actions.jpg["Selecting connector type"]
  68. For example, you can choose _Slack_ as a connector type and configure it to send
  69. a message to a channel you selected. You can also create an index connector that
  70. writes the JSON object you configure to a specific index. It's also possible to
  71. customize the notification messages. A list of variables is available to include
  72. in the message, like job ID, anomaly score, time, or top influencers.
  73. [role="screenshot"]
  74. image::images/ml-anomaly-alert-messages.jpg["Customizing your message"]
  75. After you save the configurations, the rule appears in the *{alerts-ui}* list
  76. where you can check its status and see the overview of its configuration
  77. information.
  78. The name of an alert is always the same as the job ID of the associated
  79. {anomaly-job} that triggered it. You can mute the notifications for a particular
  80. {anomaly-job} on the page of the rule that lists the individual alerts. You can
  81. open it via *{alerts-ui}* by selecting the rule name.