Post on 06-Jun-2015
Conhecendo o
DtraceDaniel CunhaOSUM/CEOSUG Leaderdanielsoro@gmail.comhttp://osum.sun.com/profile/danielcunha
Dtrace> O que é o Dtrace?> Arquitetura Dtrace> Estrutura do script
> Probe> Provedor> Módulo/Função> Nome
> Predicado> Ações
> Referências
> Conhecendo o Dtrace – Open Source University Meetup
O que é o Dtrace?> Framework criado pela Sun Microsystems para o Solaris 10 que oferece ao administrador de sistemas uma maneira compreensível de acompanhar e rastrear todas as operações internas de cada processo ou rotina do sistema, tornando-se uma poderosa ferramenta para diagnóstico avançado de problemas ou otimizações.
> Portável para (Open)Solaris, Mac OS X, Linux e BSD.
> Conhecendo o Dtrace – Open Source University Meetup
Arquitetura Dtrace
> Conhecendo o Dtrace – Open Source University Meetup
Estrutura do script#!/usr/sbin/dtrace -s
Descrição do probe/predicado/{Ações
}
> Conhecendo o Dtrace – Open Source University Meetup
Probe> Descreve o que queremos ouvir/sondar na execução do script
> Descrito através de 4 campos (Provedor, Modulo, Função e Nome)
> Conhecendo o Dtrace – Open Source University Meetup
Probe | Provedor> Especifica o método de instrumentação a ser utilizada.
#!/usr/sbin/dtrace -s
syscall:::/predicado/{
Ações}
> Conhecendo o Dtrace – Open Source University Meetup
Probe | Módulo/Função> Descreve o módulo/função que deseja observar.
#!/usr/sbin/dtrace -s
syscall:libc:main:/predicado/{
Ações}
> Conhecendo o Dtrace – Open Source University Meetup
Probe | Nome> Tipicamente representa o local da função.
#!/usr/sbin/dtrace -s
syscall:libc:main:entry/predicado/{
Ações}
> Conhecendo o Dtrace – Open Source University Meetup
Predicado> Pode ser qualquer expressão D.
> A ação é executada apenas quando a mesma for true.
#!/usr/sbin/dtrace -s
syscall:libc:main:entrycpu == 0{
Ações}
> Conhecendo o Dtrace – Open Source University Meetup
Ações> Neste seção podemos conter diversas ações separadas por ponto e vírgula (;).
#!/usr/sbin/dtrace -s
syscall:libc:main:entrycpu == 0{
printf(“%4d”,cpu);}
> Conhecendo o Dtrace – Open Source University Meetup
Referências> Oracle Technology Network
http://oracle.com/technology
> DTrace (Dynamic Tracing) Communityhttp://hub.opensolaris.org/bin/view/Community+Group+dtrace/
> BigAdmin System Administration Portal – Dtracehttp://www.sun.com/bigadmin/content/dtrace/index.jsp
> Conhecendo o Dtrace – Open Source University Meetup
Conhecendo o
DtraceDaniel CunhaOSUM/CEOSUG Leaderdanielsoro@gmail.comhttp://osum.sun.com/profile/danielcunha