`
corejava2008
  • 浏览: 296590 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

7.ElasticSearch预警服务-Watcher详解-Action设置

阅读更多

ElasticSearch预警服务-Watcher详解-Action设置
Watcher中的Action指配置指定的预警动作,在满足触发条件且不节流的情况下执行。
每个Action动作执行一次,Action之间相互独立。执行过程中,发生任何错误都会记录结果,可以在历史记录中查看。Action可以访问Context中的内容。

Watcher支持的Action类型有四种:EMail(邮件),Webhook(第三方对接),Index(索引),Logging(日志记录)
1.EMail
发送通知邮件,可以配置至少一个邮箱账号。
需要在elasticsearch.yml中配置邮箱账号,每个账号需要一个唯一的名称,并配置SMTP相关信息,可以对
账号信息设置默认值。
设置属性:watcher.actions.email.service.account

watcher.actions.email.service.account:
    work:
        profile: gmail #邮箱账号,要求唯一
        email_defaults:
            from: 'John Doe <john.doe@host.domain>' #设置默认属性
            bcc: archive@host.domain #设置默认属性
        smtp:
            auth: true
            starttls.enable: true
            host: smtp.gmail.com
            port: 587
            user: <username>
            password: <password>

 使用account属性配置多个发送邮件,如果只有一个邮箱,可以不配置改属性。

来看一个完成的EMail Action配置例子:

$ curl -XPUT 'http://localhost:9200/_watcher/watch/my-watch' -d '{
 
  "actions" : {
    "email_admin" : {
      "transform" : {
      },
      "email": {
        "account":"gmail",#如不设置,则为默认邮箱,
        "to": "'John Doe <john.doe@host.domain>'", #如果没有设置,则从ElasticSearch.yml默认配置中读取。
         #收件人列表可以是多个,
         #可是'Personal Name <user1@host.domain>, user2@host.domain'
         #或者 [ 'Personal Name <user1@host.domain>', 'user2@host.domain' ]
        "subject": "{{ctx.watch_id}} executed",  #邮件标题
        "body": "{{ctx.watch_id}} executed with {{ctx.payload.hits.total}} hits"  #邮件内容
      }
    }
  }
  ...
}

 
2.WebHook
指连接到某个web服务器并监听指定端口,支持Http及Https。

简单配置如下:

PUT /_watcher/watch/my-watch
{
  ...
  "actions" : {
    "my_webhook" : {
      "transform" : {
        ...
      },
      "webhook" : {
        "method" : "POST", #请求方式
        "host" : "mylisteningserver", #请求服务器
        "port" : 9200, #请求端口
        "path": ":/{{ctx.watch_id}", #请求路径
        "body" : "{{ctx.watch_id}}:{{ctx.payload.hits.total}}" #消息体
      }
    }
  }
}

 

需要验证的配置信息

PUT /_watcher/watch/my-watch
{
  ...
  "actions" : {
    "my_webhook" : {
      "transform" : {
        ...
      },
      "webhook" : {
        "auth" : {
          "basic" : {
            "username" : "<username>", #用户名
            "password" : "<password>"  #密码,默认情况下,改数据会明文存储在索引中,如果安装SHILED服务,可以在存储前进行加密处理
          }
        }
        "method" : "POST",
        "host" : "mylisteningserver",
        "port" : 9200,
        "path": ":/{{ctx.watch_id}",
        "body" : "{{ctx.watch_id}}:{{ctx.payload.hits.total}}"
      }
    }
  }
}

 通过参数的方式配置

PUT /_watcher/watch/my-watch
{
  ...
  "actions" : {
    "my_webhook" : {
      "webhook" : {
        "method" : "POST",
        "host" : "mylisteningserver",
        "port" : 9200,
        "path": ":/alert",
        "params" : { #请求参数
          "watch_id" : "{{ctx.watch_id}}"
        }
      }
    }
  }
}

 
自定义头部信息

PUT /_watcher/watch/my-watch
{
  ...
  "actions" : {
    "my_webhook" : {
      "webhook" : {
        "method" : "POST",
        "host" : "mylisteningserver",
        "port" : 9200,
        "path": ":/alert/{{ctx.watch_id}}",
        "headers" : { #自定义头部信息
          "Content-Type" : "application/yaml"
        },
        "body" : "count: {{ctx.payload.hits.total}}"
      }
    }
  }
}

 
3.Index
以ElasticSearch索引的方式处理。

$ curl -XPUT 'http://localhost:9200/_watcher/watch/my-watch' -d '{
  ...
 "actions" : {
   "index_payload" : {
     "transform: {
     },
     "index" : {
       "index" : "my-index",  #索引名称
       "doc_type" : "my-type" #索引类型
     }
  }
}

 
4.Logging
记录普通的日志文本,常用于开发和调试情况下。

PUT /_watcher/watch/my-watch
{
  ...
  "actions" : {
    "log" : {
      "transform" : {
        ...
      },
      "logging" : {
        "text" : "executed at {{ctx.execution_time}}"
      }
    }
  }
}

 

3
1
分享到:
评论

相关推荐

    elasticsearch-analysis-ik-7.17.0

    《Elasticsearch全文检索插件IK分析器7.17.0详解》 Elasticsearch是一种流行的开源全文搜索引擎,广泛应用于大数据和big data环境中的数据检索与分析。它以其高效、灵活和可扩展性赢得了业界的青睐。在Elastic...

    windows版本ES7.17.3中文分词器elasticsearch-analysis-ik-7.17.3 .zip

    用于elasticsearch7.17.3这个版本的ik中文分词器,考虑到官网有时网络不稳定下载不下来,这里特意上传,方便大家使用; 目录结构如下: config -- 文件夹 plugin-security.policy plugin-descriptor.properties ...

    elasticsearch-analysis-ik-7.16.2.zip

    配置方面,用户可以在Elasticsearch的配置文件中指定分词器参数,如自定义词典路径,或者通过API动态调整设置。 总结,elasticsearch-analysis-ik-7.16.2作为Elasticsearch中的中文分词利器,结合其依赖库,为中文...

    elasticsearch-7.17.7-windows-x86-64.zip

    10. **安装与配置**:解压"elasticsearch-7.17.7"文件后,用户需按照官方文档配置环境变量,设置内存大小、网络端口等参数,然后启动服务,即可开始使用。 总的来说,Elasticsearch是现代大数据时代的一个重要工具...

    最新版 elasticsearch-analysis-ik-7.9.3.zip

    《Elasticsearch Analysis IK插件7.9.3详解》 Elasticsearch作为一个强大的全文搜索引擎,其灵活性和可扩展性深受开发者喜爱。然而,对于中文处理,Elasticsearch原生支持并不理想,这时就需要借助于插件来实现,...

    最新版linux elasticsearch-7.13.4-linux-x86_64.tar.gz

    7. 由于Elasticsearch需要运行在Java环境下,确保已安装Java 8或更高版本,并设置好`JAVA_HOME`环境变量。 配置Elasticsearch: 1. 打开配置文件`/usr/local/elasticsearch/elasticsearch-7.13.4/config/elastic...

    elasticsearch-head-compile-after.tar.gz+node-v8.1.2-linux-x64.ta

    用户在使用前需要先解压,然后根据项目文档指示,安装必要的依赖,配置环境,最后启动Node.js服务来运行Elasticsearch-Head。 总的来说,这个压缩包提供了用于管理和监控Elasticsearch集群的前端工具,以及运行这个...

    Elasticsearch(elasticsearch-7.17.0-linux-aarch64.tar.gz)

    Elasticsearch(elasticsearch-7.17.0-linux-aarch64.tar.gz适用于Linux x86_64 Arm芯片)是一个高度可扩展的开源全文本搜索和分析引擎。它使您可以快速,近乎实时地存储,搜索和分析大量数据。它通常用作支持具有...

    elasticsearch-7.8.0-x86_64.rpm + kibana-7.8.0-x86_64.rpm + logstash-7.8.0.rpm

    Elasticsearch、Kibana和Logstash是 Elastic Stack(前称为 ELK Stack)的重要组成部分,这是一个流行的开源数据处理和分析工具链。这三个组件在大数据、日志管理和实时分析领域广泛应用。 1. **Elasticsearch**:...

    elasticsearch-analysis-ik-7.3.2.zip

    《Elasticsearch中文分词器IK插件详解》 Elasticsearch(ES)作为一个强大的全文搜索引擎,其在处理中文文档时,对中文分词的准确性和效率有着至关重要的作用。"elasticsearch-analysis-ik"是ES中最受欢迎的中文...

    Elasticsearch(elasticsearch-7.17.0-linux-x86_64.tar.gz)

    Elasticsearch(elasticsearch-7.17.0-linux-x86_64.tar.gz适用于Linux x86_64 )是一个高度可扩展的开源全文本搜索和分析引擎。它使您可以快速,近乎实时地存储,搜索和分析大量数据。它通常用作支持具有复杂搜索...

    最新版windows elasticsearch-7.17.6-windows-x86_64.zip

    7. **防火墙设置**: 如果Elasticsearch需要对外提供服务,记得在Windows防火墙中创建相应的入站规则,允许Elasticsearch的默认端口9200和9300(HTTP和HTTPS)通信。 8. **安全考虑**: 默认情况下,Elasticsearch...

    最新版 elasticsearch-analysis-ik-7.17.6.zip

    《Elasticsearch Analysis IK插件详解与7.17.6版本特性》 Elasticsearch是一种流行的开源全文搜索引擎,以其高效、灵活和可扩展性深受开发者喜爱。在处理中文分词方面,Elasticsearch-analysis-ik插件是不可或缺的...

    最新版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-x86_64.zip最新版windows elasticsearch-8.8.2-windows-...

    elasticsearch-analysis-ik-7.16.3.zip

    《Elasticsearch中文分词器IK插件详解》 在现代大数据分析和搜索引擎领域,Elasticsearch(ES)因其高效、灵活的全文检索能力而备受青睐。然而,对于中文这样的多字节语言,如何准确地进行分词是关键。这时,我们就...

    elasticsearch-analysis-ik-7.12.0.zip

    《Elasticsearch IK 分析器插件7.12.0版详解》 Elasticsearch是一种流行的开源全文搜索引擎,以其强大的搜索能力和灵活的数据处理能力深受开发者喜爱。在处理中文文本时,选择合适的分析器至关重要,而`elastic...

    elasticsearch-analysis-ik-6.8.0.zip

    使用 IK 分词器时,首先需要将压缩包中的 JAR 文件和配置文件复制到 Elasticsearch 的 plugins 目录下,然后重启 Elasticsearch 服务以加载插件。IK 分词器支持两种分词模式:"smart" 和 "strict",前者更注重语义...

    最新版 elasticsearch-analysis-ik-8.5.1.zip

    Elasticsearch Analysis IK 是一个为 Elasticsearch 设计的强大中文分词插件,它的最新版本是 8.5.1。这个插件的主要目的是优化中文文本的检索效率和精度,通过提供高效的分词算法来提升 Elasticsearch 在处理中文...

    PyPI 官网下载 | elasticsearch-7.14.2-py2.py3-none-any.whl

    资源来自pypi官网。 资源全名:elasticsearch-7.14.2-py2.py3-none-any.whl

    elasticsearch-7.13.2-darwin-x86_64.tar.gz

    解压完成后,进入解压后的目录,启动Elasticsearch服务,通常执行`bin/elasticsearch`脚本即可。 **配置** Elasticsearch的配置文件位于`config/elasticsearch.yml`。你可以根据需求调整设置,比如更改默认端口、...

Global site tag (gtag.js) - Google Analytics