What is USB debugging?

USB debugging is a developer mode for the phone to communicate with the PC over a USB connection. It allows a device to receive commands and files from the PC and allows the PC to pull crucial information like log files from the Android device. The USB debugging mode is off by default.