The version 3.8.0.0 of GEM Automation has just been released. You can download the new package here.

Here are some of the new goodies it contains.

Hyper-V

Updated New-NanoServerCluster.ps1 for 2016 TP4 and fixed issues

Cleaned up sessions at the end of the script

StorageSpaces

libStorageSpaces.psm1 New Get-PhysicalDiskReliabilityCounters: Merges information from Get-PhysicalDisk and Get-StorageReliabilityCounter executed on remote computers to generate an output that can then be exported to a CSV for analysis in Excel. This can be used to spot trends in enclosures used for Storage Spaces to detect hot-spots or disk reliability issues.



Here’s an example that shows the percentage of the current temperature of the drives vs maximum thermal values for the disks in multiple enclosures for a cluster:

SQLServer

libSQLServerStatistics.psm1 New functions to capture wait statistics Get-SQLWaitStatisticsSample, Store-SQLWaitStatisticsSample, Get-SQLWaitLastRunningTotal As the wait statistics are cumulative in SQL Server, the collection process calculates the delta between each collection run help you assess how much of a certain wait type you had during a sample.

Monitor-SQLWait.ps1 Script that runs the wait statistics collection in a loop

Updated Create Schema DatabaseStatistics.sql to include tables to capture wait statistics

DatabaseStatistics.sql to include tables to capture wait statistics New WaitTypes.csv that contains description and category of the WaitTypes.csv You can import this in the WaitTypes table and join it in your queries on the WaitStatistics table to get grouping of the wait types.



Here what the data looks like when you visualize it in Excel:

Windows

libWindowsPerformance.psm1 New Convert-PerfmonCSVData New Convert-PerformanceBinaryData New Get-CounterInstances New Import-FilteredCounter



New functions that normalizes the Perfmon data so the counter names,instances,category become attributes instead of a column. For example:

(PDH-CSV 4.0) (Eastern Daylight Time)(240)”,”\\HOST001\\logicaldisk(Total)\% free space”,”\\HOST001\\logicaldisk(Total)\avg. disk sec/read”

becomes:

SampleTime,CounterCategory,CounterName,InstanceName,Value

This is useful when you want to perform aggregation of multiple counter instances per computer using other analysis tools such as Excel.

If you have feedback or ideas regarding GEM Automation, let me know!