code: func (c *Client) connectedClient() (redis.Conn, error) {
  	if c.client != nil {
  		log.Debug("Testing existing redis connection.")
  
  		resp, err := c.client.Do("PING")
  		if (err != nil && err == redis.ErrNil) || resp != "PONG" {
  			log.Error(fmt.Sprintf("Existing redis connection no longer usable. "+
  				"Will try to re-establish. Error: %s", err.Error()))
  			c.client = nil
  		}
  	}
  
  	// Existing client could have been deleted by previous block
  	if c.client == nil {
  		var err error
  		c.client, _, err = tryConnect(c.machines, c.password, true)
  		if err != nil {
  			return nil, err
  		}
  	}
  
  	return c.client, nil
  }
docs: // Retrieves a connected redis client from the client wrapper.
  // Existing connections will be tested with a PING command before being returned. Tries to reconnect once if necessary.
  // Returns the established redis connection or the error encountered.