zabbix郵件腳本
⑴ zabbix運維系統怎麼編寫腳本
1.修改zabbix server端配置文件啟用AlertScriptsPath使其支持腳本功能
1.編輯zabbix server端配置文件並重啟服務
# vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/alertscripts
# /etc/init.d/zabbix_server restart
2.服務端添加郵件報警python腳本並給腳本執行許可權
郵件報警並記錄志
# vim /usr/local/zabbix/alertscripts/zabbix_sendmail.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pdb
import smtplib
import string
import time
import sys
reload(sys)
sys.setdefaultencoding(『utf-8『)
#pdb.set_trace()
#HOST = "mail.gw.com.cn"
def S_Mail():
HOST = "smtp.exmail.qq.com" #郵件伺服器
SUBJECT = sys.argv[2].decode(『utf-8『).encode(『gbk『) #主題
TO =sys.argv[1] #收件郵箱
FROM = "[email protected]"
text = sys.argv[3].decode(『utf-8『).encode(『gbk『) #發件內容
BODY = string.join((
"FROM: %s" % FROM,
"To: %s" % TO,
"Subject: %s" %SUBJECT,
"",
text
),"\r\n")
server = smtplib.SMTP()
server.connect(HOST,25)
#server.starttls()
server.login("發件郵箱","密碼")
server.sendmail(FROM,[TO],BODY)
server.quit()
# email log 記錄志
with open(『/data/logs/zabbix/Email.log『, 『a『) as f:
date=time.strftime("%y-%m-%d %H:%M:%S")
str = date + " " + TO +" " + SUBJECT + "\r\n" + "\n"
str1 = str.decode(『gbk『).encode(『utf-8『)
# print("%s" %str1)
f.write(str1)
if __name__==『__main__『:
S_Mail()
⑵ zabbix的告警腳本目錄在哪
zabbix媒介類型包括mail、sms、自定義腳本,我們用的最多的還是腳本媒介,再次我們就不講另外兩個媒介了。當事件通知到腳本,會傳遞三個參數它,分別為$1(發送給誰) $2(標題) $3(內容)。例如發送郵件給[email protected],標題為nginx離線,內容是IP地址:1.1.1.1,nginx離線,請立即處理。
⑶ zabbix監控怎麼添加報警人
zabbix監控添加主機,報警、監控的設置
根據使用zabbix這么久的經驗,總結了一套zabbix比較實用的添加主機、監控報警的使用流程,供大家參考。
一:添加處理方法,就是如何報警
打開zabbix的管理------處理方法----create media type:
我用的是腳本發郵件的方式來報警的,腳本名字為mail.py。指的一提的是腳本存放位置,我的腳本是放在/usr/local/zabbix/bin/目錄下面,在這里不寫目錄的據對路徑,直接寫腳本名字,他的路徑設置是在zabbix伺服器端的配置文件中設置的,在zabbix_server.conf配置文件中設置:AlertScriptsPath=/usr/local/zabbix/bin/
二:添加zabbix用戶和組,設置其郵箱地址等信息
1:打開zabbix的管理------用戶---選擇用戶組下拉----create user group:
填寫個組名,設置需要的許可權直接保存就成,其他的不用填寫和選擇。
2:打開zabbix的管理------用戶---選擇用戶下拉----create user:
填寫用戶信息
3:添加報警介質,就是報警方式,因為是報警,【信息】那項就不用勾選,信息一般就是伺服器信息發生變化時報警,這個一般沒有什麼意義,所以不勾選,不過你也可以選擇,根據個人喜好。類型的話就是選擇處理發放中的報警介質,選擇你添加的。然後可以保存信息,完成添加用戶(Permissions那項沒有不填寫)。
三:報警觸發器觸發的動作設置
當監控項中的觸發器達到你設置的報警值之後,需要執行操作來發送郵件等動作。具體設置:
1:打開zabbix的系統配置---操作---- 選擇事件源為觸發器------create action:
2:觸發條件設置:
3:詳細操作設置,即滿足觸發條件之後執行什麼動作,這里一般設置為發郵件之類的,設置收郵件的用戶(建議每個組對應一個用戶,這樣發郵件的時候容易設置發送對象):
四:zabbix中常用到的幾個key
Zabbix的key可以理解為zabbix的命令,執行這個key可以得到相應的結果。
1:監控埠的:net.tcp.port[,3306]
/usr/local/zabbix/bin/ -s192.168.8.120 -knet.tcp.port[,3306] 返回1為192.168.8.120的埠3306存在,0為不存在
2:監控進程的:proc.num[mysqld]
/usr/local/zabbix/bin/zabbix_get -s192.168.8.120 -kproc.num[mysqld] 返回值為192.168.8.120中mysqld的進程數量
/usr/local/zabbix/bin/zabbix_get -s192.168.8.120 -kproc.num[] 返回值為192.168.8.120中所有的進程數量
3:查看CPU核數的:system.cpu.num 返回值為伺服器CPU的核數
4:查看系統的系統啟動時間和當前時間:system.boottime、system.localtime 返回值為系統啟動時間和當前時間,為時間戳格式
5:查看系統的簡單信息:system.uname 返回值為192.168.8.120的系統信息,類似於linux系統的uname -a命令
6:查看windowns系統當前網卡的進出流量:net.if.out[{HOST.NAME},bytes]、net.if.in[{HOST.NAME},bytes]和linux系統的key:net.if.out[eth0,bytes]、net.if.in[eth0,bytes]一樣
/usr/local/zabbix/bin/zabbix_get -s192.168.8.120 -knet.if.in[192.168.8.120,bytes] 返回值為IP為192.168.8.120的進流量,此值為計數值,單位為bytes,減去上次取得值,除以時間間隔為此段時間內的平均流量
/usr/local/zabbix/bin/zabbix_get -s192.168.8.120 -knet.if.out[192.168.8.120,bytes] 返回值為IP為192.168.8.120的出流量,此值為計數值,單位為bytes,減去上次取得值,除以時間間隔為此段時間內的平均流量
7:查看系統內存大小:vm.memory.size[total],返回值單位bytes
8:查看文件的大小: vfs.file.size[file] 如: vfs.file.size[/var/log/syslog] 返回的是/var/log/syslog的大小,單位是:bytes
9:查看文件是否存在:vfs.file.exists[file] 文件如果存在返回0,不存在返回1
10:查看文件的MD5:vfs.file.md5sum[file]查看小文件的MD5,返回為MD5值(好像只有2.0以上的版本有這個key)
11:自動發現網卡並監控流量和自動發現分區及分區掛載情況的兩個key:net.if.discovery,vfs.fs.discovery,windows和linux監控模板中都有這模板(2.0以上版本),應用即可
以上是常用的key,其實監控伺服器無非就是內存、硬碟佔用、CPU負載、流量、伺服器和埠等情況。如果要監控其他的可以自定義key來實現,本人喜歡自定義key,寫個腳本來返回,得到自己想要的監控結果,zabbix在這塊做的非常好,擴展性很強,支持各種腳本來實現自定義的key。
要啟用自定義key,需要在客戶端的配置文件中啟用UnsafeUserParameters=1參數,然後在配置文件的最下面來定義key,如:
UserParameter=free.disk,/usr/local/zabbix/bin/disk.py
free.disk為key的名字,/usr/local/zabbix/bin/disk.py為伺服器端調用free.disk這個key時執行的腳本,其結果就是free.disk的返回值。腳本可以是任何可以運行的腳本語言。
五:創建監控模板和監控項
其實在zabbix伺服器端安裝完成之後,就有許多自帶的監控模板,基本上可以滿足大眾化的監控需求,不過其中有許多是沒有必要的監控項或是自己不感興趣的,比較冗餘,所以要做好監控的話,還是自定義模板和監控項,這個監控模板可以修改zabbix系統自帶的,也可以自己創建。以下為自己創建監控模板。
1:創建監控模板:
打開zabbix的系統配置---模板----create template:
填寫模板名字和模板所在組保存即可。
⑷ zabbix怎樣監控windows郵件伺服器
可以配置zabbix使用外部郵件伺服器發送報警郵件,然後來隨時監控郵件伺服器,具體:
1.進入Administration->Media types
配置如下,Script name 要與之前寫的發郵件的腳本名字相同
3. 進入Configure->Actions
新建Action
可以修改默認的郵件內容,以下是我修改之後的郵件內容格式:
添加step,別忘了點Add按鈕,點上面的Add,再點下面的Add免得添加出錯,注意要選擇發送郵件給哪一個用戶;並選擇剛才定義好的Media type名字。
Default operation step ration 表示這次發送郵件後,下一次發郵件是在多少秒之後。
以上我總共添加了三次發送郵件的Action,如果觸發器出發了,一直沒有人確認觸發器,則會發三次郵件,添加完後結果如下圖:
4.進入Administration->Users
下圖為修改admin的登錄密碼:
點擊Media再添加
Type選擇Send alarm email(之前創建的Action),並填寫接收的郵箱,
⑸ 如何配置zabbix 3.0 用mail郵件方式告警support for smtp authentication was not
前提條件:
(1) zabbix伺服器端已經成功安裝並且運行。
(2) zabbix客戶端已經成功建立並且運行。
1 下載並且安裝msmtp軟體
tar jxvf msmtp-1.4.32.tar.bz2
cd msmtp-1.4.32
./configure--prefix=/usr/local/msmtp
Make
Make install
2、手動建立配置文件,輸入外部smtp地址
mkdir –p /usr/local/msmtp/etc
vi /usr/local/msmtp/etc/msmtprc
添加以下內容
account default
host smtp.sohu.com #你的發送郵件伺服器
port 25
from [email protected] #要從哪個郵箱發出
auth login
tls off
user zabbix2014 #郵箱用戶名
password xxxxx-xxx #郵箱密碼,如果你覺得不安全可以把文件改為600屬性
logfile /var/log/mmlog
保存退出。
3、簡單測試一下
/usr/local/msmtp/bin/msmtp [url=mailto:%[email protected]][email protected][/url]
hello,test
ctrl d
cat /usr/local/msmtp/msmtp.log 看看有沒有成功。
然後再到sohu郵箱中,看看信收到沒有
報錯如下
[iyunv@cache-2 msmtp-1.4.32]# /usr/local/msmtp/bin/msmtp [email protected]
msmtp: authentication failed (method LOGIN)
msmtp: server message: 535 5.7.0 Invalid result
msmtp: could not send mail (account default from /usr/local/msmtp/etc/msmtprc)
Google之後,需要安裝 mutt組件
4、下面開始安裝 MUTT如果是CentOS的話直接用yum就好了
yum install mutt
安裝完成後要手動給他建立一個配置文件,
vim /etc/Muttrc
setsendmail="/usr/local/msmtp/bin/msmtp" #你的msmtp命令路徑
set use_from=yes
set realname="[email protected]"
set editor="vim"
簡單的4行就可以了
好了,讓我們來測試一下吧!
測試一下:echo"test mail" | mutt -s "test" [email protected]
OK,測試了下,能收到已經發送的email,
echo"test mail 2014 content tom 2" | mutt -s "test 2014 title2" [email protected]
5、 創建 zabbix用於發送郵件的腳本
腳本放在什麼位置隨便,但是要保證zabbix可以找到!
1)vim/usr/bin/zabbix2014,並寫入如下內容:
#!/bin/bash
echo "$3" | mutt -s "$2"$1 # $3表示郵件內容、$2表示郵件標題、$1表示收件人
(2)chmod a+x /usr/bin/zabbix2014
6、 zabbix配置
(1)創建meida types
1.登錄到zabbix,進入「Administration" >> 」Media types",點擊右上角「Create Media Type"。 Description填"mediatype-zabbix2014"或其它名稱,Type選擇"Script",Script填」 zabbix2014」。
2.點擊save保存,
7、創建actions
1.登錄到zabbix,進入"Configation" >> "Actions",點擊右上角"Create Actions"。輸入Name 「action-zabbix2014」 ,其它都默認點擊右側「Action Operations"下的"New"按鈕,"Operation Type"選擇"Send message","Send Message to"選擇一個或多個要發送消息的用戶組,」Send only to"選擇我們之前新增的mediatype-zabbix2014。
2.點擊save保存,
8、zabbix用戶配置
登錄到zabbix, 進入"Adimistration" >>"Users",在之前選定要發送消息的組里的Members欄位里選擇一個用戶,例如選擇AdminZabbix用戶。
在用戶信息修改界面最下方的」Media"處點擊"Add"按鈕。
Type選擇"mediatype- zabbix2014",Send to填入收件人地址,點擊Add添加。
點擊"Save"保存配置。
⑹ zabbix3.0.4郵件報警 腳本參數怎麼設置
不需要設置腳本呀,,只要在web端配置填上email就可以了。 。
⑺ 如何實現zabbix報警郵件中可以顯示ip地址
說明:
Zabbix監控服務端、客戶端都已經部署完成,被監控主機已經添加,Zabiix監控運行正常。
實現目的:
在Zabbix服務端設置郵件報警,當被監控主機宕機或者達到觸發器預設值時,會自動發送報警郵件到指定郵箱。
具體操作:
以下操作在Zabbix監控服務端進行
備註:Zabbix監控服務端
操作系統:CentOS
主機名:zabbix.osyunwei.com
郵件報警有兩種情況:
1、Zabbix服務端只是單純的發送報警郵件到指定郵箱,發送報警郵件的這個郵箱賬號是Zabbix服務端的本地郵箱賬號(例如:[email protected]),只能發送,不能接收外部郵件。
2、使用一個可以在互聯網上正常收發郵件的郵箱賬號(例如:[email protected]),通過在Zabbix服務端中設置,使其能夠發送報警郵件到指定郵箱。
第一種:使用Zabbix服務端本地郵箱賬號發送郵件
一、安裝sendmail或者postfix
yum install sendmail #安裝
service sendmail start #啟動
chkconfig sendmail on #設置開機啟動
yum install postfix
service postfix start
chkconfig postfix on
CentOS 5.x 默認已經安裝好sendmail
CentOS 6.x 默認已經安裝好postfix
sendmail和postfix只需要安裝一個即可並開啟服務即可。
二、安裝郵件發送工具mailx
yum install mailx #安裝
CentOS 5.x
編譯安裝mailx,直接yum安裝的mailx版本太舊,使用外部郵件發送會有問題。
yum remove mailx #卸載系統自帶的舊版mailx
下載mailx:
http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2
tar jxvf mailx-12.4.tar.bz2 #解壓
cd mailx-12.4 #進入目錄
make #編譯
make install UCBINSTALL=/usr/bin/install #安裝
ln -s /usr/local/bin/mailx /bin/mail #創建mailx到mail的軟連接
ln -s /etc/nail.rc /etc/mail.rc #創建mailx配置文件軟連接
whereis mailx #查看安裝路徑
mailx -V #查看版本信息
echo "zabbix test mail" |mail -s "zabbix"
[email protected]
#測試發送郵件,標題zabbix,郵件內容:zabbix test
mail,發送到的郵箱:[email protected]
三、配置Zabbix服務端郵件報警
1、打開Zabbix
管理-示警媒介類型-Email
名稱:Email
類型:電子郵件
SMTP伺服器:zabbix.sa.huanqiu.com
SMTP HELO:zabbix.sa.huanqiu.com
SMTP電郵:[email protected]
已經用:勾選
存檔
備註:zabbix.sa.huanqiu.com為Zabbix監控端主機名稱,建議修改,否則使用默認的localhost.localdomain發送郵件會被當做垃圾郵件攔截。
2、設置Zabbix用戶報警郵箱地址
組態-用戶-Admin (Zabbix Administrator)
切換到示警媒介
添加
類型:Email
收件人:[email protected]
其他默認即可,也可以根據需要設置
狀態:已啟用
存檔
3、設置Zabbix觸發報警的動作
組態-動作-創建動作
名稱:Action-Email
默認接收人:故障{TRIGGER.STATUS},伺服器:{HOSTNAME1}發生:
{TRIGGER.NAME}故障!
默認信息:
告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
恢復信息:打鉤
恢復主旨:恢復{TRIGGER.STATUS}, 伺服器:{HOSTNAME1}:
{TRIGGER.NAME}已恢復!
恢復信息:
告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
已啟用:打鉤
切換到操作選項
新的
操作類型:送出信息
送到用戶:添加
默認信息:打鉤
用戶:勾選Admin
選擇
僅送到:Email
存檔
四、測試Zabbix報警
關閉Zabbix客戶端服務
service zabbix_agentd stop
查看[email protected]郵箱,會收到報警郵件
再開啟Zabbix客戶端服務
service zabbix_agentd start
查看[email protected]郵箱,會收到恢復郵件
使用Zabbix服務端本地郵箱賬號發送郵件設置完成。
第二種:使用外部郵箱賬號發送報警郵件設置
一、關閉sendmail或者postfix
service sendmail stop #關閉
chkconfig sendmail off #禁止開機啟動
service postfix stop
chkconfig postfix off
備註:
使用外部郵箱賬號時,不需要啟動sendmail或者postfix
如果在sendmail或者postfix啟動的同時使用外部郵箱發送報警郵件,首先會讀取外部郵箱
配置信息。
二、安裝郵件發送工具mailx
yum install mailx #安裝
CentOS 5.x 編譯安裝mailx,直接yum安裝的mailx版本太舊,使用外部郵件發送會有問題。
yum remove mailx #卸載系統自帶的舊版mailx
下載mailx:
http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2
tar jxvf mailx-12.4.tar.bz2 #解壓
cd mailx-12.4 #進入目錄
make #編譯
make install UCBINSTALL=/usr/bin/install #安裝
ln -s /usr/local/bin/mailx /bin/mail #創建mailx到mail的軟連接
ln -s /etc/nail.rc /etc/mail.rc #創建mailx配置文件軟連接
whereis mailx #查看安裝路徑
mailx -V #查看版本信息
三、配置Zabbix服務端外部郵箱
vi /etc/mail.rc #編輯,添加以下信息
set [email protected] smtp=smtp.163.com
set [email protected]
smtp-auth-password=123456
set smtp-auth=login
:wq! #保存退出
echo "zabbix test mail" |mail -s "zabbix" [email protected]
#測試發送郵件,標題zabbix,郵件內容:zabbix test
mail,發送到的郵箱:[email protected]
#這時候,郵箱[email protected]會收到來自[email protected]的測試郵件
四、配置Zabbix服務端郵件報警
1、打開Zabbix
管理-示警媒介類型-創建媒體類型
名稱:Sendmail
類型:腳本
腳本名稱:sendmail.sh
已啟用:勾選
存檔
2、設置Zabbix用戶報警郵箱地址
組態-用戶-Admin (Zabbix Administrator)
切換到示警媒介-添加
類型:Sendmail
收件人:[email protected]
其他默認即可,也可
以根據需要設置
狀態:已啟用
存檔
3、設置Zabbix觸發報警的動作
組態-動作-創建動作
名稱:Action-Email
默認接收人:故障{TRIGGER.STATUS},伺服器:{HOSTNAME1}發生:
{TRIGGER.NAME}故障!
默認信息:
告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
恢復信息:打鉤
恢復主旨:恢復{TRIGGER.STATUS}, 伺服器:{HOSTNAME1}:
{TRIGGER.NAME}已恢復!
恢復信息:
告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
已啟用:打鉤
切換到操作選項
新的
操作類型:送出信息
送到用戶:添加
默認信息:打鉤
選擇用戶:Admin
選擇
僅送到:Sendmail
存檔
4、添加Zabbix服務端郵件發送腳本
cd /usr/local/zabbix/share/zabbix/alertscripts #進入腳本存放目錄
vi sendmail.sh #編輯,添加以下代碼
#!/bin/sh
echo "$3" | mail -s "$2" $1
:wq! #保存退出
chown zabbix.zabbix
/usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
#設置腳本所有者為zabbix用戶
chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
#設置腳本執行許可權
五、測試Zabbix報警
關閉Zabbix客戶端服務
service zabbix_agentd stop
查看[email protected]郵箱,會收到報警郵件
再開啟Zabbix客戶端服務
service zabbix_agentd start
查看[email protected]郵箱,會收到恢復郵件
使用外部郵箱賬號發送報警郵件設置完成。
至此,Zabbix郵件報警設置完成。
⑻ zabbix 3.0.1怎麼配置腳本
配置方式:
1. 完成自定義監控腳本的編寫(windows或linux腳本)
腳本要求:(1)既然是監控,那必然要有輸出結果值(字元串,數字皆可)
(2)必須要求zabbix用戶有執行許可權,當然可以直接設置所有用戶都有執行許可權(chmod 777 腳本文件)
(3)若腳本需要傳入參數,按照參數傳入的順序,在腳本中可用$1-$9來引用傳入的參數
2 找到zabbix agent的配置文件zabbix_agentd.conf,修改如下兩個參數
UnsafeUserParameters=0 => UnsafeUserParameters=1並去掉前面的注釋符
UserParameter= => UserParameter=aaa.bbb[*], /usr/local/script/monitor.sh $1 $2 ...
說明:aaa.bbb[*] ---zabbix伺服器添加監控信息時需要用到的key值,
格式:aaa.bbb[*](例:system.file.size[*])
/usr/local/script/monitor.sh ----監控腳本絕對路徑
為了便於靈活監控,有時腳本需要傳入參數,此參數可從zabbix伺服器端傳入,所有參數按順序分別從$1-$9表示
註:(1)若無需傳入參數,則紅色部分可省略
(2)該自定義腳本可由zabbix伺服器控制收集數據的頻率(如:每30s運行一次),無需再添加計劃任務
(3)以上參數請根據實際情況填寫,並注意去除參數前注釋符(#)
(4)注意在key值和後面的腳本之間有個逗號隔開
至此,自定義監控腳本zabbix agent端配置結束
3. 測試
測試命令: /usr/local/bin/zabbix_agentd -t key[參數]
示例:/usr/local/bin/zabbix_agentd -t system.file.size[/etc/a.txt,abc,...]
4. 監控腳本舉例:
腳本名稱:/usr/local/script/monitor.sh
腳本內容:echo `date +"%F %T"`
腳本要求:必須在控制台輸出值,該值將作為返回值返回給zabbix伺服器端
⑼ 如何添加zabbix監控的shlle腳本
zabbix怎麼使用自動發現添加新監控迅蠢項 1.Server zabbix系統核心進程,輪詢並捕獲數據、發送通薯搭知等。是zabbix agent和畝手陪zabbix proxy匯報數據的對象。server自身可遠程檢測網路服務。所有的前後端配置、統計信息、可操作數據存儲於此。包含server、...
⑽ zabbix查看哪些郵件發送成功
管理->審計->動作, 能看到發送郵件的狀態, 但是這個狀態成功並不代表完全成功, 需要查看發送腳本發送郵件是否有報錯信息, 另外需要看是否有退信,才能知道郵件是否真正成功