Relog Utility

Relog.exe isn't some new fad amongst Bloggers - it's a tool from the Windows Resource Kit that helps you convert per­for­mance counter logs produced by Per­for­mance Monitor (perfmon.exe) into common text formats such as CSV. Earlier today I ran perfmon.exe and forgot to change the logging format from the default binary format to CSV. I searched the Web for a tool to convert to a format acceptable to LogParser and I found Relog. This utility saved me having to redo five hours of monitoring to get the data that I needed to analyse. Cheers to the Resource Kit team!

Syntax: relog input.blg -f CSV -o output.csv

Where can I get it? Download relog.exe for free from the Microsoft Download Center (requires a genuine Windows in­stal­la­tion).

Tagged with perfmon and windows.

RailsConf Review

My RailsConf photos on FlickrIt's just over a week since I returned from the First In­ter­na­tion­al Rails Conference in Chicago and I've had some time to reflect on my ex­pe­ri­ences and put a few photos online. This was the first open source conference I have attended and it was a truly en­light­en­ing experience. I had the pleasure of meeting some very in­ter­est­ing people from Mike Bailey to Dave Thomas and Martin Fowler.

The crowd at RailsConf was very different from that at Microsoft events which I have regularly attended in recent years. This was refreshing but also a challenge as I'm not a UNIX guru by any means. It's clear that there is little interest in the community to actively support Windows and provide a bridge for .NET developers to migrate. This schism is something that the veterans like Dave Thomas are looking to cross as there is a lot of time and effort invested in other tech­nolo­gies. DHH's keynote address railed against support of XML Web Services and legacy database schemas. It will be in­ter­est­ing to see if Thought­Works, or another vendor, will step up and provide more support for working with enterprise tech­nolo­gies.

Deployment seemed to be a hot topic for all users at the conference and it was in­ter­est­ing to see the ca­pa­bil­i­ties with Rails. Mike Clark's talk on Capistrano was won­der­ful­ly presented. The simplicity of being able to pull together a build system which integrates source control and remote deployment was amazing. This is something that is sorely missed in the .NET community and could probably be built on top of NAnt in a less elegant way than Capistrano.

Jan Kneschke provided an in­ter­est­ing insight into building a Web server to handle a massive number of con­nec­tions. His Web server, LightTPD, was popular with the Rails community due to its FastCGI im­ple­men­ta­tion but now has com­pe­ti­tion from Mongrel. He's planning on improving the mod_proxy support so that "Lighty" will work with Mongrel in a similar way to Apache.

On the final day of the conference, Stuart Holloway of Relevance, and former Java junkie at De­vel­op­Men­tor, provides an insight into some of the Ruby techniques used by the Rails team. Stuart has spent a lot of time going through the Rails internals to figure out what the Rails core team has done to provide such cool func­tion­al­i­ty. Since I haven't spent too much time with Ruby a lot of this was very deep, but the ex­pla­na­tion of analogues in the Java world helped a lot. This talk provided me with a lot of food for thought and is the reason I signed up for RailsConf.

If you are interested in other sessions I attended, I've posted my incomplete notes for download.

Regards the venue, facilities, and catering I think that the RailsConf organisers did a good job. Providing wireless internet access for 550 people is not an easy task, and the fact I could check mail from time to time was good enough for me.

Overall RailsConf was an excellent event, and I'm lucky to have attended the first conference. RailsConf II is likely to be a lot bigger next May, and the overall feeling will be different. It will be really in­ter­est­ing if Mike, Oliver and Dei come along and we can catch up on a year of Rails de­vel­op­ment.

Tagged with rails, railsconf and rubyonrails.