Doing local logging would involve looking at the $_SERVER variable values (HTTP_USER_AGENT, HTTP_REFERER, REMOTE_ADDR, etc.) and writing them to a database for later analysis.
Doing an intermediate page would mean either using the HTTP REFRESH header with a fixed delay that is long enough to make sure that GA has had time to run (so people could end up staring at your "you are about to be redirected" page for 30 seconds or a minute), or doing the redirect using JavaScript that wraps the Google Analytics code and waits for the return (or monitors the DOM for the change). Both are bad ideas; the server-side solution above is the only practical solution. There is a lot of logging code available on the net; I'm not going to write your application for you.