Hmm, define Internet Activity. There is a ton of stuff that you can log, to me it looks like you want to log content and sites, correct? Like a trap/monitor for a child/teen surfing porn?
If that is the case, start looking into
Net::Pcap to sniff and disassemble packets and parse from there. I'm not sure it works on Win32, but it should as it just uses libpcap which is available for Win32. I would also suggest that is you are looking for something in particular, start building a dictionary type data structure/file to run your packets against, if you find a match, save the entire transaction from buffer and parse further or look through it by hand.
If you are just trying to graph trends in surfing, you will probably need a lot of resources, and you will also want to look into databases to store your raw data in, then run queries against the database to get statistics.
"Nothing is sure but death and taxes" I say combine the two and its death to all taxes!