SSIS常用的包—WMI數(shù)據(jù)讀取任務(wù)和WMI事件監(jiān)聽任務(wù)
Windows Management Instrumentation (WMI)是Windows的最高機(jī)密之一,它允許你通過一個腳本界面來管理Windows平臺。WMI數(shù)據(jù)讀取任務(wù)通過WQL語言(WMA專用語言)來接觸管理服務(wù)器或者工作平臺(例如查看系統(tǒng)日志)。查詢語句可以將結(jié)果輸出到變量中。WMI數(shù)據(jù)讀取任務(wù)可以完成下面的工作。
- 在事務(wù)日志中查詢可能的錯誤信息
- 查詢正在運(yùn)行的應(yīng)用程序
- 查詢在包運(yùn)行過程中有多少可用RAM
- 判斷有多少可用的磁盤空間
在編輯界面中可以配置WMI數(shù)據(jù)讀取任務(wù),如圖3-22。首選在WMI連接管理界面新建一個WMI連接,WQLQuerySourceType屬性設(shè)置是否直接輸入查詢語句,從變量中獲取或者從文件中獲取,WQLQuerySource屬性選擇要運(yùn)行的查詢,可以是一個變量名字,文本文件名字,或者就是一個查詢語句。

圖3-22
OutputType屬性設(shè)定僅僅輸出查詢值還是和列名一起輸出,OverwriteDestination屬性設(shè)置是否每次運(yùn)行都重寫結(jié)果。
WQL查詢語言和SQL查詢語言十分類似,例如下面的查詢語言查詢C盤的可用空間,名字和其他一些度量下面的這個例子查詢關(guān)于SQL Server和SSIS的一些日志信息
OutputType屬性設(shè)定僅僅輸出查詢值還是和列名一起輸出,OverwriteDestination屬性設(shè)置是否每次運(yùn)行都重寫結(jié)果。
WQL查詢語言和SQL查詢語言十分類似,例如下面的查詢語言查詢C盤的可用空間,名字和其他一些度量
1 SELECT FreeSpace, DeviceId, Size, SystemName, Description FROM Win32_LogicalDisk
2 WHERE DeviceID = 'C:'
輸出結(jié)果如下:
1 Description, Local Fixed Disk
2 DeviceID, C:
3 FreeSpace, 32110985216
4
5 Size, 60003381248
6 SystemName, BKNIGHT
下面的這個例子查詢關(guān)于SQL Server和SSIS的一些日志信息
1 SELECT * FROM Win32_NTLogEvent WHERE
2 LogFile = 'Application' AND
3 (SourceName='SQLISService' OR SourceName='SQLISPackage')
4 AND TimeGenerated > '20100817'
輸出結(jié)果類似:
1 0
2 BKNIGHT
3 12289
4 1073819649
5 3
6 System.String[]
7 Application
8 3738
9 SQLISPackage
10 20050430174924.000000-240
11 20050430174924.000000-240
12 information
13 BKNIGHT\Brian Knight
14 0
WMI事件監(jiān)聽任務(wù)可以使SSIS監(jiān)聽操作系統(tǒng)中的WMI事務(wù)。它和WMI數(shù)據(jù)圖區(qū)任務(wù)有類似的功能,下面是WMI事件監(jiān)聽任務(wù)可以完成的工作:
· 監(jiān)視某個文件夾內(nèi)的文件被寫入
· 等待服務(wù)程序開啟
· 等待執(zhí)行某package或者轉(zhuǎn)移文件之前前十服務(wù)器的內(nèi)存使用量是否達(dá)到某個水平
· 等待CPU空閑
最后一個功能,等待CPU空閑可以使用下面類似的語句,判斷CPU使用量是否少于50%
1 SELECT * from __InstanceModificationEvent WITHIN 2 WHERE TargetInstance ISA
2 'Win32_Processor' and TargetInstance.LoadPercentage < 50
3
屬性編輯頁面和WMI數(shù)據(jù)讀取任務(wù)非常類似,如圖3-23。AfterEvent選項設(shè)置在條件滿足時任務(wù)返回成功,失敗還是否保持請求條件。還可以通過ActionAtTimeout和AfterTimeout設(shè)置超時時間和超時的時候返回結(jié)果。Timeout屬性設(shè)置任務(wù)執(zhí)行時間。

圖3-23
作者:Tyler Ning
出處:http://www.rzrgm.cn/tylerdonet/
本文版權(quán)歸作者和博客園共有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,如有問題,請微信聯(lián)系冬天里的一把火
浙公網(wǎng)安備 33010602011771號