code: func (sb *StatsdBuffer) Close() (err error) {
  	// 1. send a close event to the collector
  	req := closeRequest{reply: make(chan error)}
  	sb.closeChannel <- req
  	// 2. wait for the collector to drain the queue and respond
  	err = <-req.reply
  	// 3. close the statsd client
  	err2 := sb.statsd.Close()
  	if err != nil {
  		return err
  	}
  	return err2
  }
docs: // Close sends a close event to the collector asking to stop & flush pending stats
  // and closes the statsd client