From ccbb2939b4d5b37dad3307725ac10d0a8d9ae8c2 Mon Sep 17 00:00:00 2001 From: Timothy Perrett Date: Fri, 25 Jan 2019 13:56:58 -0800 Subject: [PATCH] Make the error messaging better --- src/github.com/getnelson/nelson/lbs.go | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/src/github.com/getnelson/nelson/lbs.go b/src/github.com/getnelson/nelson/lbs.go index cdabe3b..b495db6 100644 --- a/src/github.com/getnelson/nelson/lbs.go +++ b/src/github.com/getnelson/nelson/lbs.go @@ -211,9 +211,16 @@ func RemoveLoadBalancer(guid string, http *gorequest.SuperAgent, cfg *Config) (s return "", errs } - if r.StatusCode/100 != 2 { + rcode := r.StatusCode / 100 + if rcode != 2 { resp := string(body[:]) - errs = append(errs, errors.New("Unexpected response from Nelson server")) + if rcode == 4 { + errs = append(errs, errors.New("The request was invalid: "+resp)) + } else if rcode == 5 { + errs = append(errs, errors.New("Nelson server appears to be having trouble completing this request. Please seek assistance from an administrator. "+resp)) + } else { + errs = append(errs, errors.New("Unexpected response from Nelson server")) + } return resp, errs } else { return "Requested removal of " + guid, errs @@ -230,9 +237,17 @@ func CreateLoadBalancer(req LoadbalancerCreate, http *gorequest.SuperAgent, cfg return "", errs } - if r.StatusCode/100 != 2 { + rcode := r.StatusCode / 100 + if rcode != 2 { resp := string(body[:]) - errs = append(errs, errors.New("Unexpected response from Nelson server")) + if rcode == 4 { + errs = append(errs, errors.New("The request was invalid: "+resp)) + } else if rcode == 5 { + errs = append(errs, errors.New("Nelson server appears to be having trouble completing this request. Please seek assistance from an administrator. "+resp)) + } else { + errs = append(errs, errors.New("Unexpected response from Nelson server")) + } + return resp, errs } else { return "Loadbalancer has been created.", errs