- Elasticsearch 指南其他版本
- 8.17 中的新功能
- Elasticsearch 基础
- 快速入门
- 设置 Elasticsearch
- 升级 Elasticsearch
- 索引模块
- 映射
- 文本分析
- 索引模板
- 数据流
- 摄取管道
- 别名
- 搜索您的数据
- 重新排名
- 查询 DSL
- 聚合
- 地理空间分析
- 连接器
- EQL
- ES|QL
- SQL
- 脚本
- 数据管理
- 自动缩放
- 监视集群
- 汇总或转换数据
- 设置高可用性集群
- 快照和还原
- 保护 Elastic Stack 的安全
- Watcher
- 命令行工具
- elasticsearch-certgen
- elasticsearch-certutil
- elasticsearch-create-enrollment-token
- elasticsearch-croneval
- elasticsearch-keystore
- elasticsearch-node
- elasticsearch-reconfigure-node
- elasticsearch-reset-password
- elasticsearch-saml-metadata
- elasticsearch-service-tokens
- elasticsearch-setup-passwords
- elasticsearch-shard
- elasticsearch-syskeygen
- elasticsearch-users
- 优化
- 故障排除
- 修复常见的集群问题
- 诊断未分配的分片
- 向系统中添加丢失的层
- 允许 Elasticsearch 在系统中分配数据
- 允许 Elasticsearch 分配索引
- 索引将索引分配过滤器与数据层节点角色混合,以在数据层之间移动
- 没有足够的节点来分配所有分片副本
- 单个节点上索引的分片总数已超过
- 每个节点的分片总数已达到
- 故障排除损坏
- 修复磁盘空间不足的数据节点
- 修复磁盘空间不足的主节点
- 修复磁盘空间不足的其他角色节点
- 启动索引生命周期管理
- 启动快照生命周期管理
- 从快照恢复
- 故障排除损坏的存储库
- 解决重复的快照策略失败问题
- 故障排除不稳定的集群
- 故障排除发现
- 故障排除监控
- 故障排除转换
- 故障排除 Watcher
- 故障排除搜索
- 故障排除分片容量健康问题
- 故障排除不平衡的集群
- 捕获诊断信息
- REST API
- API 约定
- 通用选项
- REST API 兼容性
- 自动缩放 API
- 行为分析 API
- 紧凑和对齐文本 (CAT) API
- 集群 API
- 跨集群复制 API
- 连接器 API
- 数据流 API
- 文档 API
- 丰富 API
- EQL API
- ES|QL API
- 功能 API
- Fleet API
- 图表探索 API
- 索引 API
- 别名是否存在
- 别名
- 分析
- 分析索引磁盘使用量
- 清除缓存
- 克隆索引
- 关闭索引
- 创建索引
- 创建或更新别名
- 创建或更新组件模板
- 创建或更新索引模板
- 创建或更新索引模板(旧版)
- 删除组件模板
- 删除悬挂索引
- 删除别名
- 删除索引
- 删除索引模板
- 删除索引模板(旧版)
- 存在
- 字段使用情况统计信息
- 刷新
- 强制合并
- 获取别名
- 获取组件模板
- 获取字段映射
- 获取索引
- 获取索引设置
- 获取索引模板
- 获取索引模板(旧版)
- 获取映射
- 导入悬挂索引
- 索引恢复
- 索引段
- 索引分片存储
- 索引统计信息
- 索引模板是否存在(旧版)
- 列出悬挂索引
- 打开索引
- 刷新
- 解析索引
- 解析集群
- 翻转
- 收缩索引
- 模拟索引
- 模拟模板
- 拆分索引
- 解冻索引
- 更新索引设置
- 更新映射
- 索引生命周期管理 API
- 推理 API
- 信息 API
- 摄取 API
- 许可 API
- Logstash API
- 机器学习 API
- 机器学习异常检测 API
- 机器学习数据帧分析 API
- 机器学习训练模型 API
- 迁移 API
- 节点生命周期 API
- 查询规则 API
- 重新加载搜索分析器 API
- 存储库计量 API
- 汇总 API
- 根 API
- 脚本 API
- 搜索 API
- 搜索应用程序 API
- 可搜索快照 API
- 安全 API
- 身份验证
- 更改密码
- 清除缓存
- 清除角色缓存
- 清除权限缓存
- 清除 API 密钥缓存
- 清除服务帐户令牌缓存
- 创建 API 密钥
- 创建或更新应用程序权限
- 创建或更新角色映射
- 创建或更新角色
- 批量创建或更新角色 API
- 批量删除角色 API
- 创建或更新用户
- 创建服务帐户令牌
- 委托 PKI 身份验证
- 删除应用程序权限
- 删除角色映射
- 删除角色
- 删除服务帐户令牌
- 删除用户
- 禁用用户
- 启用用户
- 注册 Kibana
- 注册节点
- 获取 API 密钥信息
- 获取应用程序权限
- 获取内置权限
- 获取角色映射
- 获取角色
- 查询角色
- 获取服务帐户
- 获取服务帐户凭据
- 获取安全设置
- 获取令牌
- 获取用户权限
- 获取用户
- 授予 API 密钥
- 具有权限
- 使 API 密钥失效
- 使令牌失效
- OpenID Connect 准备身份验证
- OpenID Connect 身份验证
- OpenID Connect 注销
- 查询 API 密钥信息
- 查询用户
- 更新 API 密钥
- 更新安全设置
- 批量更新 API 密钥
- SAML 准备身份验证
- SAML 身份验证
- SAML 注销
- SAML 失效
- SAML 完成注销
- SAML 服务提供商元数据
- SSL 证书
- 激活用户配置文件
- 禁用用户配置文件
- 启用用户配置文件
- 获取用户配置文件
- 建议用户配置文件
- 更新用户配置文件数据
- 具有用户配置文件权限
- 创建跨集群 API 密钥
- 更新跨集群 API 密钥
- 快照和还原 API
- 快照生命周期管理 API
- SQL API
- 同义词 API
- 文本结构 API
- 转换 API
- 使用情况 API
- Watcher API
- 定义
- 迁移指南
- 发行说明
- Elasticsearch 版本 8.17.0
- Elasticsearch 版本 8.16.1
- Elasticsearch 版本 8.16.0
- Elasticsearch 版本 8.15.5
- Elasticsearch 版本 8.15.4
- Elasticsearch 版本 8.15.3
- Elasticsearch 版本 8.15.2
- Elasticsearch 版本 8.15.1
- Elasticsearch 版本 8.15.0
- Elasticsearch 版本 8.14.3
- Elasticsearch 版本 8.14.2
- Elasticsearch 版本 8.14.1
- Elasticsearch 版本 8.14.0
- Elasticsearch 版本 8.13.4
- Elasticsearch 版本 8.13.3
- Elasticsearch 版本 8.13.2
- Elasticsearch 版本 8.13.1
- Elasticsearch 版本 8.13.0
- Elasticsearch 版本 8.12.2
- Elasticsearch 版本 8.12.1
- Elasticsearch 版本 8.12.0
- Elasticsearch 版本 8.11.4
- Elasticsearch 版本 8.11.3
- Elasticsearch 版本 8.11.2
- Elasticsearch 版本 8.11.1
- Elasticsearch 版本 8.11.0
- Elasticsearch 版本 8.10.4
- Elasticsearch 版本 8.10.3
- Elasticsearch 版本 8.10.2
- Elasticsearch 版本 8.10.1
- Elasticsearch 版本 8.10.0
- Elasticsearch 版本 8.9.2
- Elasticsearch 版本 8.9.1
- Elasticsearch 版本 8.9.0
- Elasticsearch 版本 8.8.2
- Elasticsearch 版本 8.8.1
- Elasticsearch 版本 8.8.0
- Elasticsearch 版本 8.7.1
- Elasticsearch 版本 8.7.0
- Elasticsearch 版本 8.6.2
- Elasticsearch 版本 8.6.1
- Elasticsearch 版本 8.6.0
- Elasticsearch 版本 8.5.3
- Elasticsearch 版本 8.5.2
- Elasticsearch 版本 8.5.1
- Elasticsearch 版本 8.5.0
- Elasticsearch 版本 8.4.3
- Elasticsearch 版本 8.4.2
- Elasticsearch 版本 8.4.1
- Elasticsearch 版本 8.4.0
- Elasticsearch 版本 8.3.3
- Elasticsearch 版本 8.3.2
- Elasticsearch 版本 8.3.1
- Elasticsearch 版本 8.3.0
- Elasticsearch 版本 8.2.3
- Elasticsearch 版本 8.2.2
- Elasticsearch 版本 8.2.1
- Elasticsearch 版本 8.2.0
- Elasticsearch 版本 8.1.3
- Elasticsearch 版本 8.1.2
- Elasticsearch 版本 8.1.1
- Elasticsearch 版本 8.1.0
- Elasticsearch 版本 8.0.1
- Elasticsearch 版本 8.0.0
- Elasticsearch 版本 8.0.0-rc2
- Elasticsearch 版本 8.0.0-rc1
- Elasticsearch 版本 8.0.0-beta1
- Elasticsearch 版本 8.0.0-alpha2
- Elasticsearch 版本 8.0.0-alpha1
- 依赖项和版本
Watcher 计划触发器
编辑Watcher 计划触发器
编辑计划触发器定义了基于日期和时间何时开始执行 Watch。所有时间均以 UTC 时间指定。
Watcher 使用系统时钟来确定当前时间。为了确保计划在预期的时间触发,您应该使用诸如 NTP 之类的时间服务来同步集群中所有节点的时钟。
请记住,节流周期可能会影响 Watch 的实际执行时间。默认的节流周期为 5 秒 (5000 毫秒)。如果您配置的计划比节流周期更频繁,则节流周期将覆盖该计划。例如,如果您将节流周期设置为一分钟 (60000 毫秒),并将计划设置为每 10 秒执行一次,则 Watch 最多每分钟执行一次。有关节流的更多信息,请参阅确认和节流。
Watcher 提供了几种类型的计划触发器
Watcher 每小时计划
编辑一个 schedule
,它在每天的每个小时的特定分钟触发。要使用 hourly
计划,您可以使用 minute
属性指定您希望调度程序启动 Watch 执行的分钟(或多个分钟)。
如果您没有为 hourly
计划指定 minute
属性,则它默认为 0
,并且该计划在每个小时的整点触发--12:00
、 13:00
、14:00
等等。
配置每小时一次的计划
编辑要配置每小时一次的计划,您可以使用 minute
属性指定一个时间。
例如,以下 hourly
计划在每小时的第 30 分钟触发-- 12:30
、 13:30
、14:30
, …
{ "trigger" : { "schedule" : { "hourly" : { "minute" : 30 } } } }
配置每小时多次的计划
编辑要配置在每小时内多次触发的 hourly
计划,您可以指定一个分钟数组。例如,以下计划在每小时的每 15 分钟触发一次--12:00
、12:15
、 12:30
、12:45
、 1:00
、1:15
, …
{ "trigger" : { "schedule" : { "hourly" : { "minute" : [ 0, 15, 30, 45 ] } } } }
Watcher 每日计划
编辑一个 schedule
,它在每天的特定时间触发。要使用 daily
计划,您可以使用 at
属性指定您希望调度程序启动 Watch 执行的每天时间(或多个时间)。
时间以 24 小时制的形式 HH:mm
指定。您还可以使用保留值 midnight
和 noon
来表示 00:00
和 12:00
,并使用对象指定时间。
如果您没有为 daily
计划指定 at
属性,则它默认为每天午夜 00:00
触发一次。
配置每日计划
编辑要配置每天一次的计划,您可以使用 at
属性指定一个时间。例如,以下 daily
计划每天下午 5:00 触发一次
{ "trigger" : { "schedule" : { "daily" : { "at" : "17:00" } } } }
配置每天多次的计划
编辑要配置在每天内多次触发的 daily
计划,您可以指定一个时间数组。例如,以下 daily
计划每天在 00:00
、12:00
和 17:00
触发。
{ "trigger" : { "schedule" : { "daily" : { "at" : [ "midnight", "noon", "17:00" ] } } } }
使用对象指定时间
编辑除了使用 HH:mm
字符串语法来指定时间之外,您还可以将时间指定为具有 hour
和 minute
属性的对象。
例如,以下 daily
计划每天下午 5:00 触发一次
{ "trigger" : { "schedule" : { "daily" : { "at" : { "hour" : 17, "minute" : 0 } } } } }
要使用对象表示法指定多个时间,您可以将多个小时或分钟指定为数组。例如,以下 daily
计划每天在 00:00
、00:30
、12:00
、12:30
、17:00
和 17:30
触发
{ "trigger" : { "schedule" : { "daily" : { "at" : { "hour" : [ 0, 12, 17 ], "minute" : [0, 30] } } } } }
Watcher 每周计划
编辑一个 schedule
,它在每周的特定日期和时间触发。要使用 weekly
计划,您可以使用 on
和 at
属性指定您希望调度程序启动 Watch 执行的星期和时间(或多个星期和时间)。
您可以使用名称、缩写或数字(星期日为一周的第一天)来指定星期几
-
sunday
、monday
、tuesday
、wednesday
、thursday
、friday
和saturday
-
sun
、mon
、tue
、wed
、thu
、fri
和sat
-
1
、2
、3
、4
、5
、6
和7
时间以 24 小时制的形式 HH:mm
指定。您还可以使用保留值 midnight
和 noon
来表示 00:00
和 12:00
。
配置每周计划
编辑要配置每周一次的计划,您可以使用 on
属性指定星期几,并使用 at
属性指定时间。例如,以下 weekly
计划每周五下午 5:00 触发一次
{ "trigger" : { "schedule" : { "weekly" : { "on" : "friday", "at" : "17:00" } } } }
您还可以使用 day
和 time
属性来指定星期几和时间,它们与 on
和 at
可以互换。
配置每周多次的计划
编辑要配置每周多次触发的 weekly
计划,您可以指定一个星期几和时间值的数组。例如,以下 weekly
计划每周二中午 12:00 和每周五下午 5:00 触发
{ "trigger" : { "schedule" : { "weekly" : [ { "on" : "tuesday", "at" : "noon" }, { "on" : "friday", "at" : "17:00" } ] } } }
或者,您可以在具有 on
和 minute
属性的对象中指定星期几和时间,其中包含一个值数组。例如,以下 weekly
计划每周二和周五的下午 12:00 和下午 17:00 触发
{ "trigger" : { "schedule" : { "weekly" : { "on" : [ "tuesday", "friday" ], "at" : [ "noon", "17:00" ] } } } }
Watcher 每月计划
编辑一个 schedule
,它在每月的特定日期和时间触发。要使用 monthly
计划,您可以使用 on
和 at
属性指定您希望调度程序启动 Watch 执行的月份中的日期和时间(或多个日期和时间)。
您将月份中的日期指定为 1
到 31
(包括)之间的数值。时间以 24 小时制的形式 HH:mm
指定。您还可以使用保留值 midnight
和 noon
来表示 00:00
和 12:00
。
配置每月计划
编辑要配置每月一次的计划,您可以使用 on
和 at
属性指定一个日期和时间。例如,以下 monthly
计划在每个月的 10 号中午触发
{ "trigger" : { "schedule" : { "monthly" : { "on" : 10, "at" : "noon" } } } }
您还可以使用 day
和 time
属性来指定星期几和时间,它们与 on
和 at
可以互换。
配置每月多次的计划
编辑要配置每月多次触发的 monthly
计划,您可以指定一个日期和时间值的数组。例如,以下 monthly
计划在每个月的 10 号中午 12:00 和 20 号下午 5:00 触发
{ "trigger" : { "schedule" : { "monthly" : [ { "on" : 10, "at" : "noon" }, { "on" : 20, "at" : "17:00" } ] } } }
或者,您可以在具有 on
和 at
属性的对象中指定日期和时间,其中包含一个值数组。例如,以下 monthly
计划在每个月的 10 号和 20 号的上午 12:00 和中午 12:00 触发。
{ "trigger" : { "schedule" : { "monthly" : { "on" : [ 10, 20 ], "at" : [ "midnight", "noon" ] } } } }
Watcher 每年计划
编辑一个 schedule
,它在每年的特定日期和时间触发。要使用 yearly
计划,您可以使用 in
、 on
和 at
属性指定您希望调度程序启动 Watch 执行的月份、日期和时间(或多个月份、日期和时间)。
您可以使用名称、缩写或数字指定月份
-
january
,february
,march
,april
,may
,june
,july
,august
,september
,october
,november
和december
-
jan
,feb
,mar
,apr
,may
,jun
,jul
,aug
,sep
,oct
,nov
和dec
-
1
,2
,3
,4
,5
,6
,7
,8
,9
,10
,11
和12
您将月份中的日期指定为 1
到 31
(包括) 之间的数值。时间以 24 小时制 HH:mm
的形式指定。您也可以使用保留值 midnight
和 noon
分别表示 00:00
和 12:00
。
配置年度计划
编辑要配置一年一次的计划,您可以使用 in
属性指定月份,使用 on
属性指定日期,并使用 at
属性指定时间。例如,以下 yearly
计划每年 1 月 10 日中午触发一次。
{ "trigger" : { "schedule" : { "yearly" : { "in" : "january", "on" : 10, "at" : "noon" } } } }
您还可以使用 month
、day
和 time
属性来指定月份、日期和时间,它们与 in
、on
和 at
是可互换的。
配置一年多次的计划
编辑要配置一个一年触发多次的 yearly
计划,您可以指定月份、日期和时间值的数组。例如,以下 yearly
计划一年触发两次:1 月 10 日中午和 7 月 20 日下午 5:00。
{ "trigger" : { "schedule" : { "yearly" : [ { "in" : "january", "on" : 10, "at" : "noon" }, { "in" : "july", "on" : 20, "at" : "17:00" } ] } } }
或者,您可以在具有 in
、on
和 minute
属性的对象中指定月份、日期和时间,这些属性包含一个值数组。例如,以下 yearly
计划在 1 月 10 日、1 月 20 日、12 月 10 日和 12 月 20 日的 12:00 AM 和 12:00 PM 触发。
{ "trigger" : { "schedule" : { "yearly" : { "in" : [ "jan", "dec" ], "on" : [ 10, 20 ], "at" : [ "midnight", "noon" ] } } } }
Watcher cron 计划
编辑使用 cron 表达式定义一个 schedule
,该表达式指定何时执行 watch。
虽然 cron 表达式功能强大,但使用其他计划类型更容易配置定期发生的计划。如果您必须使用 cron 计划,请确保使用 elasticsearch-croneval
对其进行验证。
配置具有一个时间的 cron 计划
编辑要配置 cron
计划,您只需将 cron 表达式指定为字符串值。例如,以下代码片段配置一个每天中午触发的 cron
计划
{ ... "trigger" : { "schedule" : { "cron" : "0 0 12 * * ?" } } ... }
配置具有多个时间的 cron 计划
编辑要配置一个触发多次的 cron
计划,您可以指定 cron 表达式的数组。例如,以下 cron
计划在工作日的每偶数分钟触发,在周末的每奇数分钟触发
{ ... "trigger" : { "schedule" : { "cron" : [ "0 0/2 * ? * MON-FRI", "0 1-59/2 * ? * SAT-SUN" ] } } ... }
使用 croneval 验证 cron 表达式
编辑Elasticsearch 在 $ES_HOME/bin
目录中提供了一个 elasticsearch-croneval
命令行工具,您可以使用该工具来检查您的 cron 表达式是否有效并产生预期的结果。
要验证 cron 表达式,请将其作为参数传递给 elasticsearch-croneval
bin/elasticsearch-croneval "0 0/1 * * * ?"
Watcher 间隔计划
编辑一个在固定时间间隔触发的 schedule
。间隔可以设置为秒、分钟、小时、天或周
-
"Xs"
- 每X
秒触发一次。例如,"30s"
表示每 30 秒。 -
"Xm"
- 每X
分钟触发一次。例如,"5m"
表示每 5 分钟。 -
"Xh"
- 每X
小时触发一次。例如,"12h"
表示每 12 小时。 -
"Xd"
- 每X
天触发一次。例如,"3d"
表示每 3 天。 -
"Xw"
- 每X
周触发一次。例如,"2w"
表示每 2 周。
如果您不指定时间单位,则默认设置为秒。
间隔值与 Elasticsearch 中使用的标准*时间值*不同。您无法配置毫秒或纳秒的间隔。
配置间隔计划
编辑要配置 interval
计划,您需要指定一个表示间隔的字符串值。如果您省略时间单位(s
、m
、h
、d
或 w
),则默认为秒。
例如,以下 interval
计划每五分钟触发一次
{ "trigger" : { "schedule" : { "interval" : "5m" } } }
On this page