elasticsearch - 如何在工作日在Kibana中运行一个cron表达式?

标签 elasticsearch cron kibana elastic-stack

我希望我的观察者仅从星期一到星期五运行。所以我正在尝试使用以下时间表:

"trigger": {
    "schedule" : { "cron" : "0 0 0/4 * * MON-FRI" }
  },
  "input": {
  ...

但是,我越来越
Error
Watcher: [parse_exception] could not parse [cron] schedule

当我试图保存观察者时。删除MON-FRI确实有帮助,但我需要它。

该表达式有效:
0 0 0/4 ? * MON-FRI

但我不确定我是否理解 ? is required for either the day_of_week or day_of_month

谢谢!

最佳答案

我相信这是您要寻找的:

"0 0 0/4 ? * MON-FRI"

您可以使用croneval检查您的cron表达式1:
$ /usr/share/elasticsearch/bin/x-pack/croneval "0 0 0/4 ? * MON-FRI"
Valid!
Now is [Mon, 20 Aug 2018 13:32:26]
Here are the next 10 times this cron expression will trigger:
1.      Mon, 20 Aug 2018 09:00:00
2.      Mon, 20 Aug 2018 13:00:00
3.      Mon, 20 Aug 2018 17:00:00
4.      Mon, 20 Aug 2018 21:00:00
5.      Tue, 21 Aug 2018 01:00:00
6.      Tue, 21 Aug 2018 05:00:00
7.      Tue, 21 Aug 2018 09:00:00
8.      Tue, 21 Aug 2018 13:00:00
9.      Tue, 21 Aug 2018 17:00:00
10.     Tue, 21 Aug 2018 21:00:00

对于第一个表达式,您将获得以下java异常:

java.lang.IllegalArgumentException: support for specifying both a day-of-week AND a day-of-month parameter is not implemented.



您还可以使用Crontab guru来获取人类可读的描述,例如:

At every minute past every 4th hour from 0 through 23 on every day-of-week from Monday through Friday.

关于elasticsearch - 如何在工作日在Kibana中运行一个cron表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50448304/

相关文章:

postgresql - IndexMissingException[[wham] 丢失

elasticsearch - Kibana(ELK堆栈)不加载索引

amazon-web-services - 无法解析搜索源,期望的字段名称,但是得到了[START_OBJECT]

node.js - ElasticSearch/npm:elasticdump:转储响应数据期间发生意外的 token 错误

php - 通过 Gmail 或什至 Google App Engine 发送大量电子邮件?

linux - Jenkins 插件来管理多个作业的 cron/定期构建?

PHP 错误行 1 : `<?php ?>'

elasticsearch - 如何从 kibana 知道 Elasticsearch 安装的版本?

Elasticsearch - 通配符 vs 前缀 vs vs 正则表达式 vs query_string 差异和性能

java - 使用 ElasticSearch 的 script_upsert 创建文档