Semana 43 de 2021

This is an old revision of the document!


Semana 43 de 2021

Pesquisa

  • Usar o eBPF para obter rastros de aplicações abre diversas possibilidades. O tutorial disponível em https://github.com/goldshtn/linux-tracing-workshop/blob/master/bpf-usdt.md é um bom ponto de partida.
    • Infelizmente, nem tudo são flores e, para algumas linguagens, temos limitações. Por exemplo, descobri o motivo da lentidão ao utilizar o bpftrace em aplicações Java. Para linguagens dinâmicas, os probes precisam ser criados também dinamicamente. Para a JVM, isso atualmente envolve usar a opção '-XX:+ExtendedDTraceProbes' para permitir a criação de USDT. No entanto, isso tem um impacto significativo para aplicações Java (o que não se observa em outras linguagens).
    • A melhor solução seria otimizar a criação desses probes, sem incorrer em custo tão elevado quanto visto na JVM atualmente com a opção '-XX:+ExtendedDTraceProbes'.
  • Além do eBPF, também é possível obter rastros com o LTTng. Veja em https://lttng.org/docs/v2.13/#doc-java-application sobre como fazê-lo para aplicações Java.
work/semana_43_de_2021.1635348092.txt.gz · Last modified: 2021/10/27 15:21 by magsilva