On any car if you get a check engine light or other fault light this typically means one or more of the sensors or actuators has failed or has a faulty connection.
The ECU senses this and may put the car into 'limp home' mode which typically limits the revs and the amount of power available. Usually the car is safe to drive for a short distance as the mode is intended is intended to get you home without incurring any engine damage
The quickest route to repair is to have the car plugged into a diagnostic machine which will read off the fault code stored in the ECU (providing the light is still on at this point) and indicate which sensor has failed or whether the fault is more serious.
You can do a very rough and ready check yourself by unplugging sensors one at a time and seeing if any of them change the driving condition which would indicate the most recently unplugged sensor is the faulty one. This method is not foolproof though and reading a fault code off is the better method.
This could be a wiring issue as its possible a poor or partial electrical connection is being pushed apart on one of the major sensors so check the connection plug and wiring to the following;
Crank position sensor
Cam position sensor
Throttle pedal position sensor