From 96e081c7d4c5da8d3274b534e0daf7abac2ad5b2 Mon Sep 17 00:00:00 2001 From: Sam Storie Date: Mon, 6 Dec 2021 13:57:23 -0600 Subject: [PATCH] feat: adapting to support CimSession and alternative namespaces Signed-off-by: Sam Storie --- tools/collector-generator/New-Collector.ps1 | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/tools/collector-generator/New-Collector.ps1 b/tools/collector-generator/New-Collector.ps1 index 43944386..22ef94a5 100644 --- a/tools/collector-generator/New-Collector.ps1 +++ b/tools/collector-generator/New-Collector.ps1 @@ -2,19 +2,21 @@ Param( [Parameter(Mandatory=$true)] $Class, [Parameter(Mandatory=$false)] + $Namespace = "root/cimv2", + [Parameter(Mandatory=$false)] $CollectorName = ($Class -replace 'Win32_PerfRawData_Perf',''), [Parameter(Mandatory=$false)] $ComputerName = "localhost", [Parameter(Mandatory=$false)] - $Credential + [CimSession] $Session ) $ErrorActionPreference = "Stop" -if($Credential -ne $null) { - $wmiObject = Get-CimInstance -ComputerName $ComputerName -Credential $Credential -Class $Class +if($null -ne $Session) { + $wmiObject = Get-CimInstance -CimSession $Session -Namespace $Namespace -Class $Class } else { - $wmiObject = Get-CimInstance -ComputerName $ComputerName -Class $Class + $wmiObject = Get-CimInstance -ComputerName $ComputerName -Namespace $Namespace -Class $Class } $members = $wmiObject ` @@ -22,6 +24,7 @@ $members = $wmiObject ` | Where-Object { $_.Definition -Match '^u?int' -and $_.Name -NotMatch '_' } ` | Select-Object Name, @{Name="Type";Expression={$_.Definition.Split(" ")[0]}} $input = @{ + "Namespace"=$Namespace; "Class"=$Class; "CollectorName"=$CollectorName; "Members"=$members