Conhecendo o Dtrace
-
Upload
daniel-cunha -
Category
Documents
-
view
1.057 -
download
2
Transcript of Conhecendo o Dtrace
![Page 2: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/2.jpg)
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
![Page 3: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/3.jpg)
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
![Page 4: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/4.jpg)
Arquitetura Dtrace
> Conhecendo o Dtrace – Open Source University Meetup
![Page 5: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/5.jpg)
Estrutura do script#!/usr/sbin/dtrace -s
Descrição do probe/predicado/{Ações
}
> Conhecendo o Dtrace – Open Source University Meetup
![Page 6: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/6.jpg)
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
![Page 7: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/7.jpg)
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
![Page 8: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/8.jpg)
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
![Page 9: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/9.jpg)
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
![Page 10: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/10.jpg)
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
![Page 11: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/11.jpg)
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
![Page 12: Conhecendo o Dtrace](https://reader036.fdocumentos.tips/reader036/viewer/2022082703/5572ca22d8b42abb378b4d96/html5/thumbnails/12.jpg)
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