Your server logs (and website analytics) will always be the best place to mine for new keyword opportunities you may be unaware of.
For monitoring keyword rank there are quite a few options, and it just depends on what you're looking for. If you're like me, the Pro service here with weekly updates is too slow. SEScout.com has hourly updates and is usually very accurate. They have free acounts available that are good for tracking projects with 10 or less keywords.
Like pretty much any SaaS though, they can get expensive when you want to track hundreds or thousands of keywords on a regular basis. That's where software tracking is usually a better choice, such as RankTracker. I've more accuracy problems with this program for local listings, but for non-localized SEO it's great.
If you want keyword ideas based on speculative data, then SpyFu Recon is pretty neat. However, in order for it to really be of any use, you need to have a site that's already pulling in some decent traffic for its keywords.