code: func (c *Client) GetAppLog(appID string, opts *logagg.LogOpts) (io.ReadCloser, error) {
  	path := fmt.Sprintf("/apps/%s/log", appID)
  	if opts != nil {
  		if encodedQuery := opts.EncodedQuery(); encodedQuery != "" {
  			path = fmt.Sprintf("%s?%s", path, encodedQuery)
  		}
  	}
  	res, err := c.RawReq("GET", path, nil, nil, nil)
  	if err != nil {
  		return nil, err
  	}
  	return res.Body, nil
  }
docs: // GetAppLog returns a ReadCloser log stream of the app with ID appID. If lines
  // is zero or above, the number of lines returned will be capped at that value.
  // Otherwise, all available logs are returned. If follow is true, new log lines
  // are streamed after the buffered log.