simplified strace diffing
strace is an extremely powerful tool. But have you ever attempted to compare strace log files? That can get tricky. How about diffing multiple strace logs of multi-process applications? That can be a world of pain. So, I wrote a simple shell script to make a life easier. Then I decided to rewrite it in Python and life got even better :-) My reason for diffing multi-process strace logs was not to see where an application was failing (that's what debuggers are for) but more to understand the flow of program execution. So what follows may have a fairly niche audience. The script is pretty simple: it's just simplifies the log files to allow easier diffing. Specifically it: replaces all addresses with 0xADDR (or 0xNULL ). replaces all timestamps with HH:MM:SS . replaces all datestamps with YYYY/MM/DD . tracks PIDs and replaces each PID seen with a 1-based value (so the first PID seen will be assigned PID1 , the second PID2 et cetera). These simple changes turn out...