Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Metrics Monitoring in Go

Metrics Monitoring in Go

Avatar for Pierre Margueritte

Pierre Margueritte

May 23, 2018

More Decks by Pierre Margueritte

Other Decks in Programming

Transcript

  1. What’s on the menu Intro to metrics monitoring Push vs

    Pull Go Tooling Visualization Questions
  2. The Push Model Metrics monitoring in Go • Service discovery:

    know where to push • Retry policy: handle network interruption/delay • Backlog & backpressure: handle peaks & batches • Footprint bound to metric throughput
  3. The Pull model Metrics monitoring in Go • Service discovery:

    know where to pull from • No events • Risk of losing outliers • Footprint bound to number of metrics
  4. Push: StatsD Metrics monitoring in Go • Local daemon collecting/aggregating

    • Metric types ◦ Counter ◦ Gauges ◦ Timers ◦ Sets • Tag support: DogstatsD
  5. Pull: Go expvar Metrics monitoring in Go • Part of

    the standard library • Metric types ◦ Int/Float ◦ String ◦ Map ◦ Func ◦ Custom types • Great for debugging at runtime
  6. Pull: Prometheus Metrics monitoring in Go • Becoming CNCF standard

    • Metric types ◦ Counter ◦ Gauge ◦ Histogram/Summary • Push gateway • Supported by OpenCensus