预测任务 API

编辑

通过使用时间序列的历史行为来预测其未来的行为。

请求

编辑

POST _ml/anomaly_detectors/<job_id>/_forecast

先决条件

编辑

需要 manage_ml 集群权限。此权限包含在 machine_learning_admin 内置角色中。

描述

编辑

您可以基于异常检测任务创建预测任务,以推断未来的行为。请参阅 预测未来预测限制 以了解更多信息。

您可以使用 删除预测 API 来删除预测。

  • 不支持对执行群体分析的任务进行预测;如果您尝试为配置中具有 over_field_name 属性的任务创建预测,则会发生错误。
  • 创建预测时,任务必须处于打开状态。否则,将发生错误。

路径参数

编辑
<job_id>
(必需,字符串)异常检测任务的标识符。

查询参数

编辑
duration
(可选,时间单位)表示要预测的未来时间段。例如,30d 对应 30 天。默认值为 1 天。预测从处理的最后一条记录开始。
expires_in
(可选,时间单位)保留预测结果的时间段。预测过期后,结果将被删除。默认值为 14 天。如果设置为 0 值,则永远不会自动删除预测。
max_model_memory
(可选,字节值)预测可以使用的最大内存。如果预测需要使用超过提供的数量,它将假脱机到磁盘。默认值为 20mb,最大值为 500mb,最小值为 1mb。如果设置为任务配置内存限制的 40% 或更多,则会自动减少到低于该数量。

请求正文

编辑

您还可以在请求正文中指定查询参数(例如 durationexpires_in)。

示例

编辑
resp = client.ml.forecast(
    job_id="low_request_rate",
    duration="10d",
)
print(resp)
const response = await client.ml.forecast({
  job_id: "low_request_rate",
  duration: "10d",
});
console.log(response);
POST _ml/anomaly_detectors/low_request_rate/_forecast
{
  "duration": "10d"
}

创建预测后,您将收到以下结果

{
  "acknowledged": true,
  "forecast_id": "wkCWa2IB2lF8nSE_TzZo"
}

您随后可以在 Kibana 中的 单指标查看器 中看到预测。