Debug your programs like they're closed source
jvns.ca
jvns.ca
If you want to debug network traffic, a higher-level tool like Wireshark[1] (which knows about the packet formats for all sorts of different wire protocols and has sophisticated tools for filtering out just the packets you're interested in seeing) would be much easier to use than looking at system call traces.
Still, this is a great article, and I definitely agree that learning about your operating system's debugging facilities is useful, but in many cases you can save yourself a lot of time by using a tool that's optimized for a particular task.
Step 1: write shell scripts to capture certain kinds of network traffic with tcpdump and output a pcap file (e.g. have a certain function to capture HTTP traffic of a certain kind)
Step 2: open with wireshark and split screen with source code
I'm sure wireshark has a nice way of doing step 1 but I prefer the workflow of typing "foocap example.org" and then looking at the results in wireshark.
I would guess that it is similar for other run times that involve similar concurrency management techniques.