discovery.go
func URL(service, name string) (string, error) {
	proto, err := Proto(service, name)
	if err != nil {
		return "", err
	}
	host, err := Host(service, name)
	if err != nil {
		return "", err
	}
	port, err := Port(service, name)
	if err != nil {
		return "", err
	}

	rawURL := fmt.Sprintf("%s://%s:%s", proto, host, port)
	u, err := url.Parse(rawURL)
	if err != nil {
		return "", errors.New(kayvee.FormatLog("discovery-go", kayvee.Error, "missing env var", logger.M{
			"url":   rawURL,
			"error": fmt.Errorf("Failed to parse URL: %s", err.Error()),
		}))
	}
	return u.String(), nil
}
func URL(service, name string) (string, error) {
	proto, err := Proto(service, name)
	if err != nil {
		return "", err
	}
	host, err := Host(service, name)
	if err != nil {
		return "", err
	}
	port, err := Port(service, name)
	if err != nil {
		return "", err
	}

	rawURL := fmt.Sprintf("%s://%s:%s", proto, host, port)
	u, err := url.Parse(rawURL)
	if err != nil {
		return "", errors.New(kayvee.FormatLog("discovery-go", kayvee.Error, "missing env var", logger.M{
			"url":   rawURL,
			"error": fmt.Errorf("Failed to parse URL: %s", err.Error()),
		}))
	}
	return u.String(), nil
}
func URL ( service , name string ) ( string , error ) { proto , err := Proto ( service , name ) if err != nil { return " " , err } host , err := Host ( service , name ) if err != nil { return " " , err } port , err := Port ( service , name ) if err != nil { return " " , err } rawURL := fmt . Sprintf ( " " , proto , host , port ) u , err := url . Parse ( rawURL ) if err != nil { return " " , errors . New ( kayvee . FormatLog ( " " , kayvee . Error , " " , logger . M { " " : rawURL , " " : fmt . Errorf ( " " , err . Error ( ) ) , } ) ) } return u . String ( ) , nil }
// URL finds the specified URL for a service based off of the service's name and which
// interface you are accessing. Values are found in environment variables fitting the scheme:
// SERVICE_{SERVICE NAME}_{INTERFACE NAME}_{PROTO,HOST,PORT}.
URL finds the specified URL for a service based off of the service s name and which interface you are accessing . Values are found in environment variables fitting the scheme : SERVICE_ { SERVICE NAME } _ { INTERFACE NAME } _ { PROTO HOST PORT } .