Sid*_*kha 10 alert elasticsearch logstash kibana
我正在使用logstash-1.4.1,elasticsearch-1.1.1并kibana-3.1.0用于分析我的日志.我能够查看和查询我的日志.
需要在特定日志/事件发生时需要警报/通知.例如:当一次又一次地发生登录失败日志时,需要警报/通知(弹出,通过邮件等).
目前我可以查询我的日志,就像失败的登录一样,但我想要它,只要出现这样的日志,就会出现一个通知/弹出窗口而不是我手动查询它.
可以用以上三种方法完成吗?怎么能实现这一目标?
小智 9
您可以使用 Watcher监控Elasticsearch.它通过邮件提醒您.
有关详细信息,请参阅以下链接:https:
//www.elastic.co/products/watcher
您可以按照以下步骤配置Watcher:
第1步 - 为Watcher安装插件(适用于1.7):
bin/plugin --install elasticsearch/watcher/latest
bin/plugin --install elasticsearch/license/latest
Run Code Online (Sandbox Code Playgroud)
第2步 - 重新启动Elasticsearch:
ES_HOME/bin/elasticsearch
Run Code Online (Sandbox Code Playgroud)
第3步 - 验证Watcher是否已设置:
curl -XGET 'http://localhost:9200/_watcher/stats?pretty'
Run Code Online (Sandbox Code Playgroud)
第4步 - 查看日志数据中的错误:
PUT /_watcher/watch/log_error_watch
{
"trigger": {
"schedule": {
"interval": "10m"
}
},
"input": {
"search": {
"request": {
"indices": ["logs"],
"body": {
"query": {
"match": {
"message": "error"
}
}
}
}
}
},
"condition": {
"compare": {
"ctx.payload.hits.total": {
"gt": 0
}
}
},
"actions": {
"send_email": {
"email": {
"to": "<username>@<domainname>",
"subject": "Cluster logs",
"body": "Cluster Error Logs ",
"attach_data": true
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
第5步 - 配置电子邮件(添加以下行elasticsearch.yml):
watcher.actions.email.service.account:
work:
profile: gmail
email_defaults:
from: <email>
smtp:
auth: true
starttls.enable: true
host: smtp.gmail.com
port: 587
user: <username>
password: <password>
Run Code Online (Sandbox Code Playgroud)
第6步 - 删除观察者:
curl -XDELETE'http://localhost:9200/_watcher/watch/log_error_watch'
Run Code Online (Sandbox Code Playgroud)
email在logstash中有一个选项,其中在检测到日志中的某个模式时可以发送电子邮件.查看文档以供进一步阅读:http://logstash.net/docs/1.4.1/outputs/email
| 归档时间: |
|
| 查看次数: |
21055 次 |
| 最近记录: |