How to Troubleshoot SQL, Skype, Windows, Active Directory, Exchange and Basic Server issues with one tool! Its called Multi-Perf!

How to Troubleshoot SQL, Skype, Windows, Active Directory, Exchange and Basic Server issues with one tool! Its called Multi-Perf!

I made this tool last year and you know what? Its really cool! The instructions make it sound hard, but all i can say is it works,  you almost cant make a mistake, and it keeps running until a point of failure.  You will get a trace no matter what the customer does. this script has enough checking in it to run consistently, regardless of user input.


But we do want users to input the execution term correctly, so here they are.

So I know they are cryptic, but I wanted to share a few screen shots.


This script just uses a Perfmon collector to create a counter package that runs on a schedule.


Figure 1. Perfmon


Well Multi-Perf sounds like it will do a lot!  This tool will collect performance information, related to the main counters for that technology. Once the log is collected, you can then review it for specific problems,


Figure Figure 2. Set-Execution Policy

The bottom line is you get a script that gives you choices on what set of performance information you need.


dont forget to run set-execution policy Fig. 2

ex… Set-Execution Policy –Execution Policy Unrestricted.

Multi-Perf is run simply as “.\Multi-Perf  counter”, where the counter is Basic, Active, SQL, EXCH and Skype


Figure 3. Multi-Perf and Readme

See in figure 3, you have a read-me as well. This will tell you all you need to know, to run and execute the collectors for the performance monitor.

Information like the syntax of the command are located there.

.\Mult-Perf testname –computer mycomputer –instance myinstance.


Figure 4. Mult-Perf Syntax

If you are not using SQL, then you only have 2 items to put  in the tests are active, sql,lync,exch, active or basic



Here is some syntax examples



Figure 5. Run Active test on computer

See above, you use the form: .\Program testname –computer computername

If you forget the computer name, it will automatically select the local computer:




Figure 6. Run as Program .\Multi-Perf.ps1 only

If you forget to put the type of test, it will default to basic.



Figure 7 with SQL instance

If you forget to specify the instance, you will get another chance to put it in.

If you put the instance in, then that is fine. But if you did not, there is no penalty. This makes the Log tool, infallible and easy to use.



Instead of failing, The Script looks up the SQL instances, and presents them for the customer. It also says the user must type

the instance name themselves, so there is no accident


Hopefully you get the Idea of how this tool works. See the read me as well, it lays out all the features. Just try it out! It will not be as hard as at looks… because it will work every time.


Download Me Here







Storport.sys trace to find out if the storage or the server has a latency issue. Performance Server

Also Titled, How to find out if the server is slow because of the server or the storage.

This is the fastest way I could find to get the Storport.sys collected and analyzed. It is quazi automated and should not be too challenging to complete. There are some requirements:

Create Storport Trace

  • Have 2008 R2 or 2012 Server or 2012 R2.
  • Have this link to collect the storport trace.
  • Clear the cache and run your trace with the counter job running.
  • Stop the job after the data is completed its transfer.
  • Use Event Viewer to save and extract the logs to an etl file.

Analyze Storport trace

  • Download and Install the Windows 8 ADK- Windows Assessment and deployment kit
  • Install XPERF from the ADK
  • Convert the ETL file to a CSV with the command in the folder- C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\Xperf –I storport.etl > storport.csv
  • Add Power Pivot as a COM add in to your Excel in Office
  • Download the contents of storportPACMAN and unzip to c:\storeportPACMAN
  • Place the ETL into the c:\storportPACMAN folder. name it storport.etl (important)
  • There is a powershell script named storportPACMAN.ps1 in the c:\storeportPACMAN folder. Run it.

In about 5-7 minutes, or longer, depending on the size of the original file, you will have a nicely organized report on the storport latency. I posted the source Link here to let you see the original source of the zip file and script. This script and excel template saves me from the terrible task of going through 55 meg of data, looking for a needle in a hay stack. This it a highly recommended way to get some decent storport results with ICSI connections only.

In conclusion, this tool will give you a number. if your number is higher then this, then your server has an issue getting writes or reads to the storage sub-system

<  9ms = excellent
< 15ms = good
< 25ms = fair
> 25ms = poor

This post looks somewhat boaring with no pictures and graphs to look at, but I promise you the storport trace results has a nice graphical view that should take away your doubt as to if the storport is the issue. If there are latencies here at this level, it is likely the server has an issue with the storage, in some way. If this checks out, then your looking at the Storage as the bottleneck.

Thank you