Filtering & counting result Debug-StorageSubSystem


We have a windows 2016 with the new storage spaces and I want now monitor the health of the pool.
In powershell I can run: “Get-StorageSubSystem Cluster* | Debug-StorageSubSystem”
and then I have a result (cfr beneath).
I would like to filter only the “Severity: Critical” and count the result (eg “1”).

Can somebody help me? The (… | measure).count gives me a number but I can’t filter.



Severity: Critical

Reason : xxx
Recommendation : xxx
Location : xxx
Description : xxx

Severity: Minor

Reason : yyy
Recommendation : yyy
Location : yyy
Description : yyy

You can get a count based on severity by using Group-Object:

Get-StorageSubSystem Cluster* | Debug-StorageSubSystem | Group-Object -Property Severity -NoElement | Sort Count -Descending 

You can also filter like this:

$debug = Get-StorageSubSystem Cluster* | Debug-StorageSubSystem | Where {$_.Severity -eq 'Critical'}

Thank you Rob!

I will use
(Get-StorageSubSystem Cluster* | Debug-StorageSubSystem | Where {$_.PerceivedSeverity -eq ‘Critical’} | measure).count

Apparently the object was
with the property PerceivedSeverity and not severity like it was onscreen.

It took some time to detect the class but you have put me in the correct direction.