There's always a lot of people on my site, and I sometimes wonder what they're doing here.
My solution: I put togethera script that displays what pages are being looked at looking at right right now. It also shows how many pages that person has looked at, the browser tag, the host name, and when available - the site the person came from to getto this site.
How it works: First time you connect I create a database record with some basic info and the name of the page you're on. Each time you go to another page, I update that record. To ensure it's fast, I use a stored procedure and don't do any fancy queries. The name of the page comes from the template engine I built. The web page does a query of all records modified in the last, which is how long a session last. It's not exact, because you could leave the site after 20 seconds, but I can't tell when you leave, so I just guess that if you're not doing anything for 20 minutes, you probably went elsewhere.
An interesting finding: In addition to the human visitors, I can now see that there is a steady stream of bots constantly looking at my pages. Bots are programs that visit web sites to get copies of the content. This is typicallydone for updating search engines, so you'll see GoogleBot, MSNBot, and Yahoo! Slurp pretty often.
Bots pose an interesting problem for my script: Every time the bot loads a new page, it looks like new user to my script. That's because I use a cookie to see if you're a new visitor or just traveling through the site. Bots don't support cookies so I'm going to have to find another workaround if I want to make this more accurate.
You can always find the a link to the page on the number of Current Visitors on the sidebar. TeacherReviews will have this feature eventually too (it's already working, but I haven't exposed it yet).