Sto usando pycallgraph dalla riga di comando per tracciare il profilo e disegnare il grafico della chiamata di un programma relativamente semplice. Tuttavia, l'immagine risultante include le parti interne delle librerie standard (threading, json, socket) anche se non utilizzo l'opzione della riga di comando -s. L'utilizzo dell'opzione -e per escludere quei moduli non ha alcun effetto e l'utilizzo di -i comporta un grafico delle chiamate vuoto. Ho anche provato cProfile, ma solo grafici il thread principale.Come evitare che il Pycallgraph possa accedere alle funzioni della libreria standard?
Come posso fare in modo che il pycallgraph mostri solo le chiamate nel mio codice? L'attuale risultato disordinato è inutile.
Modifica: Sto usando 0.5.1, disponibile tramite easy_install. L'esecuzione di pycallgraph ./cursesclient.py restituisce questo valore: . Come puoi vedere, pycallgraph mostra l'interno dei moduli json, re, encodings, socket e threading. Re e codifiche non sono mai nemmeno chiamate direttamente nel mio codice, ma attraverso json e socket, rispettivamente.
comunque, grazie per avermi indicato a pycallgraph. –
quale versione usi? In 0.5.1 posso creare grafici con solo le mie funzioni chiamando semplicemente 'pycallgraph mycode.py', ma l'opzione '-s' ignora alcuni moduli come 'functools' – adray