x-pack邮件报警功能

1):修改elasticsearch.yml

xpack.notification.email.account:
work:
  profile: standard
  email_defaults:
    from: 邮箱地址  
  smtp:
    auth: true
    host: smtp.163.com
    port: 25
    user: 邮箱地址
    password: 邮箱密码

2):重启es

3):创建一个名字为:errors_email 的watcher,定时去扫描相关信息

curl -XPUT -u elastic:changeme 'hadoop01:9200/_xpack/watcher/watch/errors_email' -d '               
{
 "trigger" : { "schedule" : { "interval" : "10s" }},   ###每10s扫一次
 "input" : {                  
   "search" : {      
     "request" : {                  
       "indices" : [ "logs" ],           ###检查的是logs这个index                                            
       "body" : {
         "query" : {
           "match" : { "message": "error" }  ###查询看是否有error这个值
        }
      }
    }
  }
},
 "condition" : {
   "compare" : { "ctx.payload.hits.total" : { "gt" : 0 }}       ###error这个值大于0,则触发条件,发送邮件          
},
"actions" : {     ###执行动作-发送邮件到邮箱
   "send_email" : {
     "email" : {
        "to": "邮箱地址",
        "subject": "ELK error","body": "ELK stack ERROR , please check"
    }
  }
}
}';

查看当前错误索引是否创建成功
curl -XGET -u elastic:changeme 'hadoop01:9200/_xpack/watcher/watch/errors_email '
当不使用邮件报警的时候,及时删除,以免浪费资源
curl -XDELETE 'http://hadoop01:9200/_xpack/watcher/watch/errors_email '

4):测试,向logs索引中输入错误信息

邮件报警功能按照每10s检查一遍logs的索引,查看里面的错误信息是否大于0,如果大于0则进行报警;

为了验证功能是否搭建成功,向logs索引中插入错误信息:

curl -XPOST -u elastic:changeme 'hadoop01:9200/logs/event' -d '                 
{
 "timestamp" : "2018-04-16T21:16:07.613Z",
 "request" : "GET index.html",
 "status_code" : 404,
 "message" : "Error: File not found"
}'

5):图片展示

 

posted @ 2017-05-23 00:12  niutao  阅读(932)  评论(0编辑  收藏  举报