Assuming you are just talking about logging things like the requested url, the user (if authenticated), the timestamp, etc.
What I would recommend is that you implement an HttpModule, this can be in a separate dll so it doesn't have to touch the mojoPortal code, you just hook it in in the HttpModules section of Web.config
Its position in the section is the order in which the modules are processed. For each request, the HttpModules get to handle the request so you have all the request info you need like the url and the user. If you want to capture the page id then you should proably place your module after the url-rewriter module, then call CacheHelper.GetCurrentPage(); to get the currentPage instance.
So your HttpModule would just do its logging of whatever info about the request you are interested in.
Hope it helps,