ELK-STACK实战之--邮件发送
我们在使用elk等日志分析平台的时候,遇到错误日志总是习惯发送邮件及时通知有关人员进行处理,这样能够尽可能的避免损失。
本文就讲解一下如何使用Logstash的邮件发送功能发送邮件。
本文采用的是qq邮箱,实际中qq邮箱等公共的邮箱工具可能会将我们的告警日志当做垃圾邮件过滤。因此我们实际开发中多使用内部搭建的邮箱服务器。
配置文件
input {
log4j {
host => "127.0.0.1"
port => 4560
}
}
output {
stdout {
codec => rubydebug
}
elasticsearch{
hosts => ["localhost:9200"]
index => "log4j-%{+YYYY.MM.dd}"
document_type => "stdin"
}
email {
port => "25"
address => "smtp.qq.com"
username => "1210812591@qq.com"
password => "xxxxxxxxxxxxxxxx"
authentication => "plain"
use_tls => false
from => "1210812591@qq.com"
subject => "Warning: you have an error!日志出现多次错误告警"
to => "1226150121@qq.com, 1754647257@qq.com"
via => "smtp"
body => "you hava an error of plat_inter_error!!测试logstash邮件发送"
}
}
Port和address是smtp服务器的地址,如果你是qq邮件服务器的话,那就是smtp.qq.com
Username和password是你的个人邮箱的地址和密码,一般这里是你发送邮件的发送方邮箱地址,这里我填上我的qq邮箱地址。
密码要注意,现在的qq邮箱第三方客户端登陆不使用本来的密码了,而是第三方授权的密码,隐私需要,我把我的授权码给隐藏了,打了星号,你填上你的授权码就OK了: