open-falcon之使用mail-provider發郵件(支持smtp SSL協議)


一、首先確定go語言安裝環境配置好

1.進入官網下載源碼包

https://golang.org/dl/

2.解壓縮,配置環境變量

在/etc/profile最后加上export PATH=$PATH:/usr/local/go/bin(此處解壓至/usr/local/目錄下)

source /etc/profile生效

3.go version查看安裝版本

 

二、安裝mail-provider
1.二進制安裝
下載編譯好的二進制
wget http://cactifans.hi-www.com/open-falcon/mail-provider.tar.gz
mkdir -p mail-provider
tar zxvf mail-provider.tar.gz -C mail-provider
cd mail-provider

修改cfg.json文件相關信息,使用
./control start
即可啟動客戶端

 

2.源碼編譯方法:

cd $GOPATH/src mkdir github.com/open-falcon/ -p cd github.com/open-falcon/ git clone https://github.com/open-falcon/mail-provider.git cd mail-provider go get ./... ./control build

測試是否成功使用:curl http://$ip:4000/sender/mail -d "tos=a@a.com,b@b.com&subject=xx&content=yy"

參考https://github.com/open-falcon/mail-provider/pull/17/commits/e322fcb11c634d562a768cfd9e296fb580e5d1d1

 

由於本人使用阿里雲服務器,禁了25端口,所以只能使用基於SSL協議的smtp 465端口,但是上述方法有一個地方錯誤,導致不能同時發送多個郵件,告警也就不能發送。

錯誤如下所示,當把逗號改為分號時,此處測試就成功了:

所以需要查看修改mail-provider/http/mail.go文件,再重新編譯即可。

重新編譯的話參考上述,cd mail-provider,重新go get ./...然后./control build,重新啟動即可。

 

因為也沒有學過go語言,所以猜大概原因就是上述的方法有誤,逗號沒有替換成功,直接用逗號來分割傳入的郵箱號。

注意:

當安裝好,使用curl測試時出現address format error錯誤,說明go語言環境沒有配置好,重新安裝配置go語言環境,重新編譯即可。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM