vSphere Mini Monitor : Now With More Cowbell!

The Twitter fail whale error message.
Image via Wikipedia

Roughly three weeks ago I released my first vSphere tool called the vSphere Session Monitor. The response to this was extremely positive and hopefully accomplished my goal of encouraging others to spend some time experimenting with their own ideas. In my mind, the success of adoption of cloud technologies within an organization will be tied to how they grasp the extensibility of virtualization using vSphere.

For me, a lot changed in the last three weeks. I announced I was joining EMC and leaving my current company which, when the dust settled, ended up resulting in a nice two week temporary unemployment period.

Back when I released VSM 1.0 and before the icons were dry on the shortcuts, I had already written up a mental list of features I wished I had added to it. So I quickly got busy working on the new version. However, progress was quickly slowed down to a crawl by the fact that I no longer had an environment to test against. So after spending half a week getting a decent lab setup I finally got back to finishing the new tool. I feel this version will really show that there are almost unlimited possibilities to what you can do with the API’s that VMware has provided.

First things first, the vSphere Session Monitor will from now on be officially renamed the vSphere Mini Monitor. This is version 2.0 and brings a massive list of features, brand new UI, and structured approach to how it is designed.

So here is what is new in 2.0:VMM UI

New UI
Because of all the new features I had to revamp the UI to be better organized and look slicker.

Saved Configuration
One big request from the last release was the ability to save credentials when the VSM (now VMM) was closed. The new VMM will save all configurations when closed including username, password, vCenter URL, and alerts and channel settings. I also implemented encryption of all security-sensitive data (passwords, tokens). These configurations are stored per unique user securely for multiple user workstations and all encrypted credentials will not work for another user.

Now instead of just monitoring sessions on your vCenter server, the VMM will now monitor a large number of changes to multiple objects. Within the UI there is now the ability to turn on or off specific Alert categories. Here is a list of the possible choices:

New Session*
List Sessions*
Terminated Session (New!)

Not very much here yet

Changes (HA, DRS, etc)

Changes (Network, Storage, Maintenance Mode State)

Resource Pool

Virtual Machine
Changes (Device Add/Remove, CPU, Memory)

Distributed Switch

Changes (Uplinks, Port Groups)


*original features

As you can see, this was quite a lot of work. All the alerts are based around letting you know something is occurring and if available who is doing it. The really cool ones are at the Virtual Machine and Host level. Those were quite fun to code.

ChannelsVMM Channels
In VSM 1.0 there was only one method to alert the user, the notification tray. But, what if you weren’t looking at your tray? What if you were down the hall eating an apple and getting the newest gossip from the front desk guy/girl? That is where the definition of ‘Channels’ comes in. You can now choose to alert via multiple methods. Here is a list and explanation of each:

Notification Tray
This is pretty similar to the VSM 1.0 except with the addition of new alerts it can be quite a bit busier. I also changed it to condense similar messages into one popup instead of multiple. This means if someone changes the CPU count, removed a CD device, and renames a VM you will see one popup showing all three changes.

Pretty self-explanatory, this will basically send an email to you or a DL with the exact text as the notification tray popups. This requires SMTP relay rights for the IP that VMM is sending from to the email domain VMM is sending to for the server specified in the settings. This really comes in handy when you are going to be out of office or away from your desk and want to still see the alerts.

RSS Feed
This is my second favorite channel and works really well. Basically you set an output path, either local or UNC, that VMM will drop an RSS.XML file into. You can have the path be a folder on a web server or run a script to copy it to one. This will provide an RSS 2.0 compliant feed of the last thirty VMM alerts and will be updated each new alert. This is very handy for those that don’t like the notification tray or want to share alerts among a team.

Yes, you read that right. By far my favorite feature in the new VMM 2.0 is that you can now use Twitter as a channel for alerting. This required quite a bit of elbow grease and testing but works wonderfully.

When you enable this channel the VMM will open a browser window prompting you to Authorize VMM for a Twitter account. It will also open an input window for you to enter the corresponding PIN number. After you login into the chosen Twitter account and approve the VMMTool application, Twitter will supply a PIN which you type/copy/paste into the VMM input window. This will authorize VMM to update this account’s tweetstream with alerts. This authorization is per workstation and per user. It will stay authorized until you remove access via Twitter or delete the VMM application. All this is done via OAuth and even the tokens used are still encrypted at rest just to be sure.

This rocks for several reasons. If you are a Twitter addict like me you check your tweets every five minutes. Now your vCenter server will keep you up to date on what is going on from your cellphone or Twitter client. Big things to remember on this are: Don’t use your personal Twitter account for this. Make sure you make the Twitter account private to control who sees the tweets. Also, Twitter’s API is a little hit or miss sometimes(Fail Whale). Even though I get a update successful message back, sometimes the tweet may not show. I didn’t build in tweet validation yet so your mileage may vary. And remember that you don’t own the data on Twitter.

The purpose of the vSphere Mini Monitor is to provide a simple extension of the vSphere Web SDK to allow for real-time alerting of important user-based events on your vCenter server. It is not meant to replace a holistic monitoring platform. I wrote it to be secure, multithreaded, and lightweight. It is simply a cool geeky tool.

One quick disclaimer: I do not endorse using the VMM for anything other than your whitebox home lab in the closet under the stairs and even then only late at night when the wife and kids are asleep. I am not responsible for anyone opening up Visual Studio or a Java IDE and spending countless hours drinking Mountain Dew and learning object class structure. This product is not endorsed or affiliated with EMC Corporation at all. I technically don’t work for EMC till next week but, I am future-proofing this post.

To download the vSphere Mini Monitor click one of the links below. I have built both x86 and x64 versions. I only ask three things in return for this tool:

  1. Please post a comment below with your feedback. Bad, good, or indifferent.
  2. If you are a Twitter user follow me at @lynxbat to catch updates as they come out.
  3. Think real hard about the last cool idea you had. Now plan sometime this week and start working on it.

Download x86 version
Download x64 version



72 Comments Leave a comment

  1. I downloaded and installed it on my Windows 7 x64 laptop. When I go to launch it, it tells me that this is the first time I’ve run it, and prompts for my VC info and credentials. As soon as I click “Enter” it crashes. This happens every time I attempt to run the program.

  2. What i the meaning of setting up free tools, if you can’t even download them. Either set this page offline or even better fix the problem with download. There are option enough to upload small applications for download on the net besides using your own ftp server?.

%d bloggers like this: