In my case, a trip to the service department. Per manual a check engine light that comes on and goes off is OK...one that stays on means there is a problem. Went through all the "suggestions" in the manual with no results...seems there was a crossed wire after they replaced my overheating fan. Since then...so far, so good.
Did you try reseting, could mean nothing or could be something only way to know is hook it up to the machine. Mine in the Tahoe comes on about once a month for a day or so then goes off. Crazy machines!
Probably one of the oxygen sensors. My Z06 Corvette used to do it on cold mornings, the dealership replaced one under warranty and all better. It wont hold a code once it goes out, so you may need to leave it at the dealership overnight. When it finally goes bad the light will stay on.