BPF tem capacidades similares ao DTrace no Linux 4.9-rc1
O Linux teve diversas tecnologias que miravam para o rumo da análise de performance, mas nenhuma foi adicionada a mainline do kernel. O mais curioso, é que o próprio BPF(Berkley Packet Filter) foi inicialmente definido como um software para criação de redes definidas por software, e acabou sendo ampliado para fazer tracing.
A única falha do BPF aqui é a falta de uma linguagem de alto nível para ajudar os engenheiros que trabalham nesta área. Contudo, regras podem ser criadas pelo BCC(BPF Compiler Collection), software desenvolvido por Brenden Blanco. Outro frontend para o BPF é a suite "perf".
No link de referência há imagens de como funciona o BPF, bem como exemplos dos comandos execsnoop, que mostra como um novo processo foi originado(nroff foi lançado por man, por exemplo), histogramas de latência em operações de I/O com o biolatency, operações em ext4 com duração menor a 5 milissegundos com o ext4slower, tabela de relação entre pid e conexão tcp aberta com o tcpconnect, latência em DNS(getaddrinfo() e gethostbyname() ) utilizando o comando gethostlatency e por aí vai. Vale a pena dar uma conferida.
Enviado por Nícolas Wildner (nicolasgauchoΘgmail·com)
Comentar
comments powered by DisqusComentários arquivados