I would try out Surfcontrol. I use it at work and it works really nice. It even generates reports that you can print out and save. There are reports for almost everything and on almost every protocol you can think of. Its quite expensive and so I was initially turned off but over time I have learned to appreciate it's high price tag.
Matt