ElasticSearch预警服务-Watcher详解-Condition设置
Condition用于在Watcher触发后决定是否去执行Action动作.
目前支持的类型有4种,分别是always,never,script,compare.
如果没有进行设置,则默认为always类型。
当Condition执行时,可以访问Context中的数据,即Script和Compare可以使用其中的数据来决定是否满足条件。
1.Always Condition
设置为Always后,Action动作总会执行除非遇到throttled(节流)的情况.
PUT _watcher/watch/my-watch { ... "condition" : { "always" : {} } ... }
2.Never Condition
设置为Never后,Action动作永远不会执行.
PUT _watcher/watch/my-watch { ... "condition" : { "never" : {} } ... }
3.Script Condition
默认脚本语言是Groovy。这里可以设置ElasticSearch支持的所有编程语言。
{ ... "condition" : { "script" : "return true" #默认Groovy } ... }
3.1.InLineScript
{ ... "condition" : { "script" : { "inline" : "return true"; } } ... }
带参数的设置
{ ... "condition" : { "script" : { "inline" : "return result"; "lang" : "groovy", "params" : { "result" : true #参数设置 } } } ... }
3.2.File Script 使用脚本文件,脚本文件必须放置到config/scripts目录下
{ ... "condition" : { "script" : { "file" : "my_script"; } } ... } 使用脚本文件并带参数设置 { ... "condition" : { "script" : { "file" : "my_script"; "lang" : "groovy", "params" : { "result" : true } } } ... }
3.3.Indexed Scripts
{ ... "condition" : { "script" : { "id" : "my_script" } } ... } 使用索引脚本并带参数设置 { ... "condition" : { "script" : { "id" : "my_script", "lang" : "javascript", "params" : {"color": "red"} } } ... }
3.4使用Script获取Context中的数据
{ "input" : { "search" : { "search_type" : "count", "indices" : "log-events", "body" : { "query" : { "match" : { "status" : "error" } } } } }, "condition" : { "script" : {#获取命中数,并判断大于节流阀值 "script" : "return ctx.payload.hits.total > threshold", "params" : { "threshold" : 5 } } } ... }
4.Compare Condition
通过与Watcher Context中的模型数据进行比较,即可以使用eq,not_eq,gt,gte,lt,lte等判断条件。
{ ... "condition" : { "compare" : { "ctx.payload.hits.total" : { "gte" : 5 } } ... }
对于日期格式的数据,可以使用表达式。
{ ... "condition" : { "compare" : { "ctx.execution_time" : { "gte" : "<{now-5m}>" } } ... }
#Context中数据进行比较
{ ... "condition" : { "compare" : { "ctx.payload.aggregations.status.buckets.error.doc_count" : { "not_eq" : "{{ctx.payload.aggregations.handled.buckets.true.doc_count}}" } } ... }
相关推荐
用于elasticsearch7.17.3这个版本的ik中文分词器,考虑到官网有时网络不稳定下载不下来,这里特意上传,方便大家使用; 目录结构如下: config -- 文件夹 plugin-security.policy plugin-descriptor.properties ...
《Elasticsearch全文检索插件IK分析器7.17.0详解》 Elasticsearch是一种流行的开源全文搜索引擎,广泛应用于大数据和big data环境中的数据检索与分析。它以其高效、灵活和可扩展性赢得了业界的青睐。在Elastic...
5. **elasticsearch-analysis-ik-7.16.2.jar**:核心分词器库,包含IK分词器的所有功能实现。 6. **plugin-security.policy**:插件的安全策略文件,限制了插件的权限,确保安全运行。 7. **plugin-descriptor....
《Elasticsearch Analysis IK插件7.9.3详解》 Elasticsearch作为一个强大的全文搜索引擎,其灵活性和可扩展性深受开发者喜爱。然而,对于中文处理,Elasticsearch原生支持并不理想,这时就需要借助于插件来实现,...
5. 设置环境变量:在`~/.bashrc`或`~/.bash_profile`中添加`export PATH=$PATH:/usr/local/elasticsearch/elasticsearch-7.13.4/bin` 6. 使环境变量生效:`source ~/.bashrc` 7. 由于Elasticsearch需要运行在Java...
用户在使用前需要先解压,然后根据项目文档指示,安装必要的依赖,配置环境,最后启动Node.js服务来运行Elasticsearch-Head。 总的来说,这个压缩包提供了用于管理和监控Elasticsearch集群的前端工具,以及运行这个...
Elasticsearch、Kibana和Logstash是 Elastic Stack(前称为 ELK Stack)的重要组成部分,这是一个流行的开源数据处理和分析工具链。这三个组件在大数据、日志管理和实时分析领域广泛应用。 1. **Elasticsearch**:...
《Elasticsearch中文分词器IK插件详解》 Elasticsearch(ES)作为一个强大的全文搜索引擎,其在处理中文文档时,对中文分词的准确性和效率有着至关重要的作用。"elasticsearch-analysis-ik"是ES中最受欢迎的中文...
Elasticsearch(elasticsearch-7.17.0-linux-aarch64.tar.gz适用于Linux x86_64 Arm芯片)是一个高度可扩展的开源全文本搜索和分析引擎。它使您可以快速,近乎实时地存储,搜索和分析大量数据。它通常用作支持具有...
《Elasticsearch中文分词器IK插件详解》 在现代大数据分析和搜索引擎领域,Elasticsearch(ES)因其高效、灵活的全文检索能力而备受青睐。然而,对于中文这样的多字节语言,如何准确地进行分词是关键。这时,我们就...
《Elasticsearch Analysis IK插件详解与7.17.6版本特性》 Elasticsearch是一种流行的开源全文搜索引擎,以其高效、灵活和可扩展性深受开发者喜爱。在处理中文分词方面,Elasticsearch-analysis-ik插件是不可或缺的...
5. elasticsearch-analysis-ik-8.5.1.jar:这个是 IK 分词插件的核心库,包含了实现分词功能的所有代码。 6. plugin-security.policy:这是 Elasticsearch 插件的安全策略文件,定义了插件可以执行的操作,以限制...
最新版windows elasticsearch-8.8.2-windows-x86_64.zip最新版windows elasticsearch-8.8.2-windows-x86_64.zip最新版windows elasticsearch-8.8.2-windows-x86_64.zip最新版windows elasticsearch-8.8.2-windows-...
7. **防火墙设置**: 如果Elasticsearch需要对外提供服务,记得在Windows防火墙中创建相应的入站规则,允许Elasticsearch的默认端口9200和9300(HTTP和HTTPS)通信。 8. **安全考虑**: 默认情况下,Elasticsearch...
《Elasticsearch IK 分析器插件7.12.0版详解》 Elasticsearch是一种流行的开源全文搜索引擎,以其强大的搜索能力和灵活的数据处理能力深受开发者喜爱。在处理中文文本时,选择合适的分析器至关重要,而`elastic...
这个软件似乎是"es"(可能是Elasticsearch的简称)的桌面客户端版本。Elasticsearch是一款开源的全文搜索引擎,广泛应用于大数据分析、日志聚合、实时搜索等领域。 在压缩包中,我们找到了以下三个关键文件: 1. *...
Elasticsearch(elasticsearch-7.17.0-linux-x86_64.tar.gz适用于Linux x86_64 )是一个高度可扩展的开源全文本搜索和分析引擎。它使您可以快速,近乎实时地存储,搜索和分析大量数据。它通常用作支持具有复杂搜索...
elasticsearch-7.17.4-x86_64.rpm文件 elasticsearch-7.17.4-x86_64.rpm文件 elasticsearch-7.17.4-x86_64.rpm文件 elasticsearch-7.17.4-x86_64.rpm文件 elasticsearch-7.17.4-x86_64.rpm文件 elasticsearch-7.17.4...
5. elasticsearch-analysis-ik-7.10.0.jar:这个是核心插件文件,包含了IK分词器的所有代码和资源,安装时会将其复制到Elasticsearch的plugins目录下。 6. plugin-security.policy:安全策略文件,可能用于限制插件...
解压完成后,进入解压后的目录,启动Elasticsearch服务,通常执行`bin/elasticsearch`脚本即可。 **配置** Elasticsearch的配置文件位于`config/elasticsearch.yml`。你可以根据需求调整设置,比如更改默认端口、...