Eu acho que memleax é exatamente o que você quer.
Ele depura o vazamento de memória de um processo em execução, anexando-o, sem recompilar o programa ou reiniciar o processo de destino. É muito conveniente e adequado para o ambiente de produção.
Funciona no GNU / Linux e no FreeBSD.
NOTA: Sou o autor, qualquer sugestão é bem-vinda
== EDIT ==
Eu escrevo outra ferramenta libleak , que conecta funções de memória por LD_PRELOAD.
Também não há necessidade de modificar o programa de destino. Embora você tenha que reiniciar o progresso com LD_PRELOAD, você pode ativar / desativar a detecção durante a execução.
Há muito menos impacto no desempenho, já que não há interceptação de sinal.
Em comparação com ferramentas semelhantes (como o mtrace), imprima a pilha de chamadas completa no ponto de vazamento de memória suspeito.