
Quando faço perfil de desempenho usando perf, normalmente isso funciona:
perf record -g -F99 $BINARY_NAME
Após a conclusão, o comando diz:
[ perf record: Captured and wrote 0.006 MB output.data (37 samples) ]
E posso ler os rastreamentos de pilha capturados usando perf script
.
No entanto, meu programa está fazendo rede assíncrona e se o(s) servidor(es) ao qual ele está se conectando estiverem off-line (meu programa está recebendo "Nenhuma rota para o host (erro OS 113)", manipulando-os e tentando conectar-se novamente.), o desempenho comando não consegue coletar amostras:
[ perf record: Captured and wrote 0.006 MB output.data ]
Quando inspecionado com perf script
, não produz nada. Quando os servidores estão online, funciona normalmente.
Meu programa é um binário nativo escrito em Rust. Alguma idéia de por que isso pode acontecer?