Screencasts - Hilfsvideos

Powershell : Retrieving the message count for MSMQ queues

Created: 08 Dez. 2012 • Aktualisiert: 18 Jan. 2013 | 14 Kommentare
Dieses Problem wurde gelöst. Siehe Lösung.


Do you have a script to monitor all MSMQ queues on Vault?

I found some on Internet but they don't work as the queue names get truncated to 64 characters.


Kategorien für Diskussion:

Kommentare KommentareZum neuesten Kommentar

das Bild der JesusWept3s

Does it have to be powershell??

das Bild der JesusWept3s

Wayne Humphrey wrote a nice little VBScript you can find here:

das Bild der mistervaults

No, it does not have to be necessary Powershell, it can be other language.

I will check this vbs and if it works I will mark as the solution.

Thanks again, great forum full of experts!

das Bild der mistervaults

I just tried the script but it returns 0 messages (although when I check in compmgmt.msc there are about 100 messages).

das Bild der AKLs

I've a script which monitors EV other MSMQ and generates HTML email alerts based on parameters definied within script.

At the core, it uses WMI query to pull MSMQ information for multiple servers.

I can upload it to download section but might take couple days as it goes through approvals.

If you wish, I can email it to you and you can test if it works for you

Thank You


das Bild der mistervaults

Thanks for reply, yes it could be great if you can send me by email so I can test.

das Bild der AndrewBs

here's how you can use the WMI called from powershell. works like a charm. just put this in a file whatever.ps1 and you're off to the races. you can substitute the ft for fl or however you'd like the results to be listed.

$queues = Get-WmiObject Win32_PerfFormattedData_msmq_MSMQQueue
$queues | ft -property Name,MessagesInQueue

Andy Becker | Authorized Symantec Consultant | Trace3 | Symantec National Partner |

das Bild der GertjanAs

We use the attached Powershell.

The file srvlist.txt (which is called in the PS1 file) is filled with the aliasses of the EV-servers, 1 per line.

This list reports if an EV-queue is over 100 messages.

Rename file to .ps1, test

CheckPrivateQueues.ps1_.txt 1.24 KB

Thank you, Gertjan, MCSE, MCITP,MCTS, SCS, STS

das Bild der mistervaults

I just tested this tool on my EV server (clustered) : 

PS C:\msmq> .\MSMQMonitor.exe

QUADROtech MSMQ monitoring (
Unhandled Exception: System.Messaging.MessageQueueException: Remote computer is
not available.
   at System.Messaging.MessageQueue.GetPrivateQueuesByMachine(String machineName
   at QUADROtech.MSMQMonitor.MSMQ.MessageQueueInit.LoadWrappers(String machineNa
me, MonitorFilterDefinition filterDefinition)
   at QUADROtech.MSMQMonitor.Program.Main(String[] args)
PS C:\msmq>
das Bild der Rob.Wilcoxs

I've never tried it on a clustered environment.  Did you try any of the command line switches from the instructions on the QUADROtech web site?

(Feel free to email direct to troubleshoot ->

das Bild der Rob.Wilcoxs

NP - I think we got to the bottom of (part of) it on email .. MSMQ Monitor currently doesn't support clustered servers.

As mentioned over email, I'll dig out some other code and send it over.