Its been almost a year since my first post on this subject. Over the past year I have moved from hosting all of my websites with Server 2003 to Server 2008, and in the course of that I had to re-setup my log zipping application.
In the course of that, I found that the previous script did not work with IIS7 logfiles. The difference being the default naming convention of the files. In IIS 6 the name was exYYMMDD.log, in IIS7 the name is u_exYYYYMMDD.log. that extra u_ was throwing off the script as it tried to parse the date out to create the zip file. So I got back in touch with my buddy who originally wrote the script and requested some features.
What we came up with is a script that determines the offset of the date in the filename and can parse the date regardless of the convention. This will allow you to run it against IIS6 or IIS7 logs without modification. (In theory you could use this against any type of log file that includes a date, but I have not tested it)
We also threw in a variable that allows the user to set how many days of logfiles to keep on the drive unzipped. In this fashion you can keep the most recent X days of logs uncompressed for troubleshooting.
I also included a batch file that will allow you to run, and/or schedule a task to run the script as needed. The files are located here. Give it a shot and let me know if it helps!