For any of the condor_status queries below, you can pass -direct <name> to get the result directly from a given schedd rather than from the collector.

To find out how many jobs are waiting to transfer output

condor_status -schedd -af:ln Name TransferQueueMaxDownloading TransferQueueNumDownloading TransferQueueNumWaitingToDownload
TransferQueueDownloadWaitTime

To find out how many jobs are waiting to transfer input

condor_status -schedd -af:ln Name TransferQueueMaxUploading TransferQueueNumUploading TransferQueueNumWaitingToUpload
TransferQueueUploadWaitTime
or
condor_status -direct <name> -schedd -long | sort | egrep "Name|Upload|Download"

To find out which jobs are uploading or waiting to upload. Note this query only works for jobs that have never run anywhere before.

condor_q -const 'JobStatus==2 && JobCurrentStartExecutingDate=?=undefined'

To find out which jobs are downloading.

condor_q -const 'JobStatus==6'

To find out what percentage of time your jobs are transferring data vs. executing.

over the lifetime of the schedd

condor_status -schedd -af Name 'JobsAccumPreExecuteTime*100.0/JobsAccumExecuteTime' 'JobsAccumPostExecuteTime*100.0/JobsAccumExecuteTime'

over the last RECENT_WINDOW_MAX seconds

condor_status -schedd -af Name 'RecentJobsAccumPreExecuteTime*100.0/RecentJobsAccumExecuteTime' 'RecentJobsAccumPostExecuteTime*100.0/RecentJobsAccumExecuteTime'