Did some logging but no GPS logging
Ingredients can include:
A nice shield is - Data-Logger Shield for Arduino - it has sample code
add a GPS shield to it , most have a serial interface, not too difficult - Serial.Available() + Read() are important
RPM-sketches are discussed almost every week on the forum, magnet and hall sensor over interrupt - see attachInterrupt()