天天看點

通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!

    由于之前ESB是供應商部署的,且部署在C槽(C槽空間很小,還添加了很多ESB的windows服務日志在C槽,很容易把C槽空間占滿,導緻ESB服務運作當機,幾乎每隔幾周發生一次事故,需要人工幹預處理,不甚其煩), 是以前段時間對于基于RabbitMQ建構的ESB進行了綜合優化,以確定ESB服務的穩定可靠,同時初步建立了自動化的ESB監控和運維體系,本文介紹一種其中用到技術之一,通過SSIS監控遠端伺服器磁盤空間并發送郵件報警,目的是當自動化ESB運維失效的時候,可以進行人工幹預處理。

   通過WMI可以很容易查詢和獲得遠端伺服器的磁盤空間,如磁盤空間不足1G,自動發送郵件給自定人員進行報警,具體過程如下:

通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!
    WMI的連接配接管理器:
通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!
     定義的兩個包變量如下圖:
通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!
      通過WMI的WQL的語句:

SELECT FreeSpace FROM Win32_LogicalDisk where DriveType= 3 and DeviceID='C:'      
通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!

      腳本任務中主要實作磁盤空間的變量指派并判斷是否小于1G:

通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!
long gb = 1024 * 1024 * 1024; 
           
            // TODO: Add your code here
            Dts.Variables["DiskResults"].Value = double.Parse(Dts.Variables["DiskUsageResults"].Value.ToString()) / gb;
            
            Dts.TaskResult = (int)ScriptResults.Success;      
通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!

        磁盤空間不足1G,發送報警郵件,如下圖:

通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!
通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!

     最終實作效果,如下圖:

通過SSIS監控遠端伺服器磁盤空間并發送郵件報警!
本部落格為軟體人生原創,歡迎轉載,轉載請标明出處:http://www.cnblogs.com/nbpowerboy/p/3367918.html。演繹或用于商業目的,但是必須保留本文的署名軟體人生(包含連結)。如您有任何疑問或者授權方面的協商,請給我留言。