Sensor to measure engine RPM

In the past I have used a hall effect sensor to detect the teeth of a gear in the engine. You get one pulse for each tooth on the gear. Other than finding a safe and secure means of mounting the sensor, no changes are needed to the engine. Signal processing is a little more complicated than the magnet type hall effect. Since the teeth are causing a much smaller variation in the magnetic field, you need to do some filtering, amplification depending upon the sensor, gear size, and material, etc...