SSIS常用的包—WMI数据读取任务和WMI事件监听任务

简介:   Windows Management Instrumentation (WMI)是Windows的最高机密之一,它允许你通过一个脚本界面来管理Windows平台。WMI数据读取任务通过WQL语言(WMA专用语言)来接触管理服务器或者工作平台(例如查看系统日志)。

  Windows Management Instrumentation (WMI)是Windows的最高机密之一,它允许你通过一个脚本界面来管理Windows平台。WMI数据读取任务通过WQL语言(WMA专用语言)来接触管理服务器或者工作平台(例如查看系统日志)。查询语句可以将结果输出到变量中。WMI数据读取任务可以完成下面的工作。

  • 在事务日志中查询可能的错误信息
  • 查询正在运行的应用程序
  • 查询在包运行过程中有多少可用RAM
  • 判断有多少可用的磁盘空间

  在编辑界面中可以配置WMI数据读取任务,如图3-22。首选在WMI连接管理界面新建一个WMI连接,WQLQuerySourceType属性设置是否直接输入查询语句,从变量中获取或者从文件中获取,WQLQuerySource属性选择要运行的查询,可以是一个变量名字,文本文件名字,或者就是一个查询语句。

      img_bcf71558011ccc50e92410a393d05099.jpe

                         图3-22

  OutputType属性设定仅仅输出查询值还是和列名一起输出,OverwriteDestination属性设置是否每次运行都重写结果。

WQL查询语言和SQL查询语言十分类似,例如下面的查询语言查询C盘的可用空间,名字和其他一些度量下面的这个例子查询关于SQL Server和SSIS的一些日志信息

OutputType属性设定仅仅输出查询值还是和列名一起输出,OverwriteDestination属性设置是否每次运行都重写结果。

  WQL查询语言和SQL查询语言十分类似,例如下面的查询语言查询C盘的可用空间,名字和其他一些度量 

 
 
1 SELECT FreeSpace, DeviceId, Size, SystemName, Description FROM Win32_LogicalDisk
2   WHERE DeviceID = ' C: '

输出结果如下:

 
 
1 Description, Local Fixed Disk
2 DeviceID, C:
3 FreeSpace, 32110985216
4
5 Size, 60003381248
6 SystemName, BKNIGHT

下面的这个例子查询关于SQL ServerSSIS的一些日志信息 

 
 
1 SELECT * FROM Win32_NTLogEvent WHERE
2 LogFile = ' Application ' AND
3 (SourceName = ' SQLISService ' OR SourceName = ' SQLISPackage ' )
4 AND TimeGenerated > ' 20100817 '

输出结果类似:

 

 
 
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事件监听任务可以使SSIS监听操作系统中的WMI事务。它和WMI数据图区任务有类似的功能,下面是WMI事件监听任务可以完成的工作:

·         监视某个文件夹内的文件被写入

·         等待服务程序开启

·         等待执行某package或者转移文件之前前十服务器的内存使用量是否达到某个水平

·         等待CPU空闲

最后一个功能,等待CPU空闲可以使用下面类似的语句,判断CPU使用量是否少于50%

 
 
1 SELECT * from __InstanceModificationEvent WITHIN 2 WHERE TargetInstance ISA
2 ' Win32_Processor ' and TargetInstance.LoadPercentage < 50
3

  

  属性编辑页面和WMI数据读取任务非常类似,如图3-23AfterEvent选项设置在条件满足时任务返回成功,失败还是否保持请求条件。还可以通过ActionAtTimeoutAfterTimeout设置超时时间和超时的时候返回结果。Timeout属性设置任务执行时间。

      img_72e15a444ba8ec2f1d8cd1c324a62bf3.jpe

                      图3-23

作者:Tyler Ning
出处:http://www.cnblogs.com/tylerdonet/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过以下邮箱地址williamningdong@gmail.com  联系我,非常感谢。

目录
相关文章
|
Linux PHP Windows
WMI 异常问题,重置WMI
分享一个WMI 异常问题,重置WMI的案例
WMI 异常问题,重置WMI
|
关系型数据库 Oracle BI
|
监控 Windows 安全