Sto provando a diagnosticare un comando a intermittenza lenta. Quando eseguo il comando e lo vedo sospeso, premo control + t per ottenere il PID, quindi in un'altra scheda, eseguo diagnose [PID] - ad es. diagnose 123 . Ho definito diagnose come funzione nella mia configurazione zsh:
# See system calls of the process with a given PID
function diagnose() { sudo dtruss -cade -p "$1" 2>&1 | tee /tmp/dtruss_output }
Ovviamente, poiché sto reagendo quando noto un blocco, eseguo diagnose diversi secondi dopo l'avvio del processo. L'output elenca molte chiamate di sistema, ma mi chiedo se mi manca qualcosa di importante.
La lista comandi comandi retroattivamente? In altre parole, l'output di dtruss -p [PID] include le chiamate di sistema effettuate da quel processo prima che sia stato eseguito dtruss ?