In situ detection of welding defects: a review