<Discovery ID="VKernel.CapacityAnalyzer.VmPageFileSizeDiscovery" Enabled="true" Target="SCVMM2012DiscoveryMP!Microsoft.SystemCenter.VirtualMachineManager.2012.VirtualMachine" ConfirmDelivery="false" Remotable="true" Priority="Normal">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="VKernel.CapacityAnalyzer.VirtualMachine">
<Property TypeID="VKernel.CapacityAnalyzer.VirtualMachine" PropertyID="PageFileSize"/>
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.TimedScript.DiscoveryProvider">
<IntervalSeconds>14400</IntervalSeconds>
<SyncTime/>
<ScriptName>PageFileSizeDiscovery.js</ScriptName>
<Arguments>$MPElement$ $Target/Id$ $Target/Property[Type="SCVMMLibraryMP!Microsoft.SystemCenter.VirtualMachineManager.VirtualMachine"]/VMMId$ $Target/Property[Type="SCVMMLibraryMP!Microsoft.SystemCenter.VirtualMachineManager.VirtualMachine"]/VMMServer$ $Target/Property[Type="SCVMMLibraryMP!Microsoft.SystemCenter.VirtualMachineManager.VirtualMachine"]/GuestFQDN$ fakeParam</Arguments>
<ScriptBody><Script>var oAPI = WScript.CreateObject("MOM.ScriptAPI");
var oArgs = WScript.Arguments;
var SourceId = oArgs.Item(0);
var ManagedEntityId = oArgs.Item(1);
var VmmGuid = oArgs.Item(2);
var ComputerName = oArgs.Item(3);
var vmName = oArgs.Item(4);
var locator = WScript.CreateObject("WbemScripting.SWbemLocator");
var services = locator.ConnectServer(vmName, "root\\cimv2");
var pageFileEnum = new Enumerator(services.ExecQuery("select AllocatedBaseSize from Win32_PageFileUsage", "WQL", 0x20));
var oDiscoveryData = oAPI.CreateDiscoveryData(0, SourceId, ManagedEntityId);
var pageFileSize = 0;
for (; !pageFileEnum.atEnd(); pageFileEnum.moveNext())
{
var pageFileObj = pageFileEnum.item();
pageFileSize += pageFileObj.AllocatedBaseSize;
}
var oInst = oDiscoveryData.CreateClassInstance("$MPElement[Name='VKernel.CapacityAnalyzer.VirtualMachine']$")