code: func (c *Client) Post(metrics []Metric) error {
  	series := struct {
  		Series []Metric `json:"series,omitempty"`
  	}{Series: metrics}
  
  	buf := fetchBuffer()
  	defer bufferPool.Put(buf)
  
  	var dst io.Writer = buf
  	if !c.DisableCompression {
  		zlw := fetcZlibWriter(buf)
  		defer zlibWriterPool.Put(zlw)
  		defer zlw.Close()
  
  		dst = zlw
  	}
  
  	if err := json.NewEncoder(dst).Encode(&series); err != nil {
  		return err
  	}
  	if c, ok := dst.(io.Closer); ok {
  		if err := c.Close(); err != nil {
  			return err
  		}
  	}
  	return c.post(buf.Bytes(), 0)
  }
docs: // Post delivers a metrics snapshot to datadog