The easiest way to see if your gettin heat is to grab the heater hoses. If there not hot it could be the thermostate or low coolant level. But if one hose is hotter than the other look for a kink in the heater core hoses.If this doesn't help and you know the thermostate is good your heater core may be pluged up to see if this is the case pull the heater hoses off the engine and take a water nozle and apply pressure through one of the hoses to force the trash out. Be careful not to put to much water pressure the heater core runs on about 14lbs of pressure its best to use a pulsating meathod.
My first thought was the thermostat and then low water. Have you changed or added antifreeze lately? I know there have been some issues with mixing antifreeze types and some limited gelling/clogging occuring. From what I understand, it has happened when some brands of old style antifreeze were mixed with the new extended life stuff. I don't know any details other than this, but heard the discussion at the parts store the other day.
I agree with the others, I am a full time GM technician and part time LCO. If the radiator hoses and heater hoses are getting hot, it is inside the truck with the mode door or something. If one heater hose is hot and the other isn't, the heater core is blocked. There should be very little differenc in inlet and outlet temp on the heater hoses. The 5.7 engines were bad for intake manifold gaskets leaking, you may be low in coolant. The 99 and older, old body style ( i guess that's what you have) had some problems with the control assemblies too. 1st check the coolant level, then check the hose temp.