Most recent post

Monday, November 5, 2007

Freeware - VSSMonitor

A VBScript utility that continually monitors a VSS database and sends emails when certain patterns are detected.

This is an extension on the free utility written by Doug Schmidt called SSMonitor. You can view the original functionality at the CodeProject web site:

Thanks Doug for a great utility.

From the original functionality it has been extended to provide the following :-
1. Highwater marker (basically a file offset) to ensure that if the PC is rebooted the ‘cached’ events aren’t lost. This is only moved along when there are no events cached.
2. Checked-out status – using VSS automation conducting a check of files that have been Checked Out for an configurable number of days.
3. Supporting day or the week notifications – e.g. not just every 15 mins, or daily at 5:00pm, but Friday 5:00pm.
4. Regular Expression check on username – same as the filename expression check, but on usernames.

I’ve used the new features above for the following checks
- before the weekend notifying all developers of code checked out.
- notified when a particular person checks in code. Perfect for checking what new starters or recently terminated staff may be up to.
- tracking for interested parties when only a particular person makes a change.

Download. VBScript source is included in download.

To install:
1. Copy and Unzip the archive to a folder on your harddrive
2. As per SSMonitor installation obtain a copy of SMTP.ocx and copy to your harddrive - Additionally register the component.
3. For ‘Check Out’ functionality if VSS 6.0 isn’t installed on the PC that you’ll be running VSSMonitor then copy the Visual Source Safe automation dlls SSUS.dll and SSAPI.DLL to your VSSMonitor folder. Register SSAPI.DLL.
4. Configure the config.xml file which your SMTP, VSS and Pattern events. A sample file is included in the zip.
5. Run the batch file VSSMonitor.cmd which will commence the monitoring - a trace file produced in the Log folder.

Additional Config.xml values beyond the SSMonitor standard :-
** Database **
VSSINIPath - location to the srcsafe.ini file
VSSUsername - VSS Username
VSSPassword - VSS Password

** Pattern **
fixedReportTime – supports ‘ddd hh:mm’ format. E.g. ‘Fri 8:00 AM’ or ‘8:00 AM’

userFilter – Regular Expression of usernames for filtering

eventFilter – new type being ‘Checked Out’
checkedOutDays – Number of days which a file must be checked out for to trigger being included in the Checked Out notification
pathTopLevel - Top level(s) of VSS that the CheckOut pattern should commence searching from, reduces query time if more specific, comma seperated for more than 1 path

** Legal **
This program is free software; you can redistribute it and/or modify it.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Post a Comment

<< Home