关闭异常检测任务 API
编辑关闭异常检测任务 API
编辑关闭一个或多个异常检测任务。
请求
编辑POST _ml/anomaly_detectors/<job_id>/_close
POST _ml/anomaly_detectors/<job_id>,<job_id>/_close
POST _ml/anomaly_detectors/_all/_close
先决条件
编辑- 需要
manage_ml
集群权限。此权限包含在machine_learning_admin
内置角色中。
描述
编辑一个任务在其生命周期中可以多次打开和关闭。
关闭的任务无法接收数据或执行分析操作,但您仍然可以浏览和导航结果。
如果您关闭数据馈送正在运行的异常检测任务,则请求会首先尝试停止数据馈送。此行为等效于调用 停止数据馈送 API,并使用与关闭任务请求相同的 timeout
和 force
参数。
当您关闭一个任务时,它会运行诸如修剪模型历史记录、刷新缓冲区、计算最终结果和持久化模型快照之类的清理任务。根据任务的大小,关闭可能需要几分钟的时间,重新打开也需要相同的时间。
关闭后,除了维护其元数据外,该任务对集群的开销最小。因此,最佳做法是关闭不再需要处理数据的任务。
当具有指定结束日期的数据馈送停止时,它会自动关闭其关联的任务。
如果您使用 force
查询参数,则请求将返回,而不会执行关联的操作,例如刷新缓冲区和持久化模型快照。因此,如果您希望在关闭任务 API 返回后任务处于一致状态,则不要使用此参数。 force
查询参数应仅用于任务已失败,或者您对任务最近可能产生或将来可能产生的结果不感兴趣的情况。
路径参数
编辑-
<job_id>
-
(必需,字符串)异常检测任务的标识符。它可以是任务标识符、组名称或通配符表达式。
您可以使用
_all
或指定*
作为任务标识符来关闭所有任务。
查询参数
编辑-
allow_no_match
-
(可选,布尔值)指定当请求
- 包含通配符表达式且没有匹配的任务时要执行的操作。
- 包含
_all
字符串或没有标识符且没有匹配项时要执行的操作。 - 包含通配符表达式且只有部分匹配项时要执行的操作。
默认值为
true
,当没有匹配项时返回一个空的jobs
数组,当有部分匹配项时返回结果的子集。如果此参数为false
,则当没有匹配项或只有部分匹配项时,请求将返回404
状态代码。 -
force
- (可选,布尔值)用于关闭失败的任务,或强制关闭未响应其初始关闭请求的任务。
-
timeout
- (可选,时间单位)控制等待任务关闭的时间。默认值为 30 分钟。
请求正文
编辑您还可以在请求正文中指定查询参数(例如 allow_no_match
和 force
)。
响应代码
编辑-
404
(缺少资源) - 如果
allow_no_match
为false
,则此代码表示没有与请求匹配的资源,或者请求只有部分匹配项。
示例
编辑resp = client.ml.close_job( job_id="low_request_rate", ) print(resp)
response = client.ml.close_job( job_id: 'low_request_rate' ) puts response
const response = await client.ml.closeJob({ job_id: "low_request_rate", }); console.log(response);
POST _ml/anomaly_detectors/low_request_rate/_close
当任务关闭时,您将收到以下结果
{ "closed": true }