alanrenouf / vCheck-vSphere

vCheck Daily Report for vSphere
MIT License
733 stars 325 forks source link

Plugin 200 - VMs on Ephemeral Portgroup not showing results #750

Closed rebelinux closed 1 year ago

rebelinux commented 1 year ago

Plugin 200 - VMs on Ephemeral Portgroup not showing result.

https://github.com/alanrenouf/vCheck-vSphere/blob/0ee515f374c107cf4c21e2010616675bf95b83a2/Plugins/60%20VM/200%20VMs%20on%20ephemeral%20portgroup.ps1#L13

Example before fix:

PS C:\Users\jocolon\vCheck-vSphere> $VM = Get-VM | Sort-Object Name    
PS C:\Users\jocolon\vCheck-vSphere> $EphemeralPG = Get-VDSwitch | Get-VDPortgroup | Where-Object {$_.PortBinding -eq "Ephemeral"}
PS C:\Users\jocolon\vCheck-vSphere> $EphemeralPG

Name                           NumPorts PortBinding
----                           -------- -----------
Ephemeral                      0        Ephemeral  
DVS-ESXi-MANAGEMENT-EPH        1        Ephemeral
Uplink                         0        Ephemeral

PS C:\Users\jocolon\vCheck-vSphere> $VM | Get-NetworkAdapter | Where-Object {$_.NetworkName -contains $EphemeralPG} | Select-Object @{Name="VMName"; Expression={$_.parent}}, @{Name="Portgroup"; Expression={$_.NetworkName}}
PS C:\Users\jocolon\vCheck-vSphere> ????

There seems to be an error in the Where-Object filter:

PS C:\Users\jocolon\vCheck-vSphere> $VM | Get-NetworkAdapter | Where-Object {$_.NetworkName -in $EphemeralPG.Name} | Select-Object @{Name="VMName"; Expression={$_.parent}}, @{Name="Portgroup"; Expression={$_.NetworkName}} 

VMName          Portgroup
------          ---------
Horizon-IDM-01V DVS-ESXi-MANAGEMENT-EPH
ntap-broker     DVS-ESXi-MANAGEMENT-EPH
NTAPMED-01V     Ephemeral
NTAPUMv-01      DVS-ESXi-MANAGEMENT-EPH

PS C:\Users\jocolon\vCheck-vSphere>
rebelinux commented 1 year ago

After Fix:

image