启动数据源 API
编辑启动数据源 API
编辑启动一个或多个数据源。
请求
编辑POST _ml/datafeeds/<feed_id>/_start
先决条件
编辑- 在启动数据源之前,必须打开异常检测作业。否则,会发生错误。
- 需要
manage_ml
集群权限。此权限包含在machine_learning_admin
内置角色中。
描述
编辑必须启动数据源才能从 Elasticsearch 检索数据。数据源在其生命周期中可以启动和停止多次。
如果重新启动已停止的数据源,默认情况下,它会继续处理停止后的下一毫秒的输入数据。如果在停止和启动之间为该精确毫秒索引了新数据,则将忽略该数据。
当启用 Elasticsearch 安全功能时,您的数据源会记住上次创建或更新它的用户在创建/更新时拥有的角色,并使用相同的角色运行查询。如果在创建或更新数据源时提供了辅助授权标头,则会改用这些凭据。
路径参数
编辑-
<feed_id>
- (必需,字符串)唯一标识数据源的数字字符串。此标识符可以包含小写字母数字字符(a-z 和 0-9)、连字符和下划线。它必须以字母数字字符开头和结尾。
查询参数
编辑-
end
-
(可选,字符串)数据源应结束的时间,可以使用以下格式之一指定
- 带毫秒的 ISO 8601 格式,例如
2017-01-22T06:00:00.000Z
- 不带毫秒的 ISO 8601 格式,例如
2017-01-22T06:00:00+00:00
- 自 epoch 以来的毫秒数,例如
1485061200000
使用任一 ISO 8601 格式的日期时间参数必须具有时区指示符,其中
Z
被接受为 UTC 时间的缩写。当期望 URL 时(例如,在浏览器中),时区指示符中使用的
+
必须编码为%2B
。此值是排他的。如果未指定结束时间,则数据源将连续运行。
- 带毫秒的 ISO 8601 格式,例如
-
start
-
(可选,字符串)数据源应开始的时间,可以使用与
end
参数相同的格式指定。此值是包含的。如果未指定开始时间,并且数据源与新的异常检测作业相关联,则分析将从最早可用数据的时间开始。
如果重新启动已停止的数据源并指定早于最新处理记录的时间戳的
start
值,则数据源将从最新处理记录的时间戳后 1 毫秒继续。 -
timeout
- (可选,时间)指定等待数据源启动的时间量。默认值为 20 秒。
请求体
编辑您还可以在请求体中指定查询参数(例如 end
和 start
)。
响应体
编辑-
node
- (字符串)数据源启动所在的节点的 ID。如果允许数据源延迟打开且尚未分配给节点,则此值为空字符串。
-
started
- (布尔值)对于成功响应,此值始终为
true
。如果失败,则会返回异常。
示例
编辑resp = client.ml.start_datafeed( datafeed_id="datafeed-low_request_rate", start="2019-04-07T18:22:16Z", ) print(resp)
const response = await client.ml.startDatafeed({ datafeed_id: "datafeed-low_request_rate", start: "2019-04-07T18:22:16Z", }); console.log(response);
POST _ml/datafeeds/datafeed-low_request_rate/_start { "start": "2019-04-07T18:22:16Z" }
当数据源启动时,您会收到以下结果
{ "started" : true, "node" : "node-1" }