2. André Carvalho
● Desenvolvedor na Globo.com
● Apaixonado por Open Source
○ Core developer do Tsuru
● Interessado em métricas,
performance e resiliência
3. “Instrumentation refers to an ability
to monitor or measure the level of a
product's performance, to diagnose
errors and to write trace
information.”
7. Prometheus
● Sistema de monitoração e alertas open source, escrito em Go
● Criado pela SoundCloud
● Integrante da Cloud Native Computing Foundation desde 2016
Características
● “Pull based” via HTTP
● Linguagem de queries flexivel
● Targets são descobertos via service discovery
10. Prometheus S2 Go
● Client oficial para instrumentação de código Go
(https://github.com/prometheus/client_golang)
● Métricas do runtime do Go out of the box
○ Goroutines, GC, OS threads ...
● Tipos de métricas:
○ Counter, Gauge, Histogram e Summary
○ Interface prometheus.Collector
12. Conclusões
● Instrumentar é importante
● Adicionar novas métricas deve ser facil
● Instrument all the things?
● Código de instrumentação é igual a qualquer outro código
○ Deve ser testado, pode ter bugs, aumenta a complexidade do sistema