Commit 31883b10 authored by Aksel Baardsen's avatar Aksel Baardsen
Browse files

added status codes as strings diag

parent f785ee22
package pkg
import (
"fmt"
"strconv"
"strings"
"time"
)
......@@ -16,8 +17,8 @@ func init() {
// struct for returning requested data
type Diag struct {
Gbif int `json:"gbif,omitempty"`
Restcountries int `json:"restcountries,omitempty"`
Gbif string `json:"gbif,omitempty"`
Restcountries string `json:"restcountries,omitempty"`
Version string `json:"version,omitempty"`
Uptime int `json:"uptime,omitempty"`
}
......@@ -27,12 +28,22 @@ func GetDiag(d* Diag) error {
// gets status of GBIF api, returns appropriate error
if err := getGbifStatus(d); err != nil{
return fmt.Errorf("error occured while contacting GBIF API: %s", err)
// if it was a timeout caused by the http.client
if strings.Contains(err.Error(), "error occured while contacting") {
d.Gbif = "503: Request timed out"
} else {
return err
}
}
// gets status of restcountries api, returns appropriate error
if err := getRestStatus(d); err != nil {
return fmt.Errorf("error occured while contacting Restcountries API: %s", err)
// if it was a timeout caused by the http.client
if strings.Contains(err.Error(), "error occured while contacting") {
d.Gbif = "503: Request timed out"
} else {
return err
}
}
d.Version = "v1"
......@@ -48,7 +59,8 @@ func getGbifStatus(d *Diag) error {
if err != nil {
return err
}
d.Gbif = resp.StatusCode
defer resp.Body.Close()
d.Gbif = strconv.Itoa(resp.StatusCode)
return nil
}
......@@ -58,7 +70,8 @@ func getRestStatus(d *Diag) error {
if err != nil {
return err
}
d.Restcountries = resp.StatusCode
defer resp.Body.Close()
d.Restcountries = strconv.Itoa(resp.StatusCode)
return nil
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment