diff --git a/main.go b/main.go index 2752b66..bfa928c 100644 --- a/main.go +++ b/main.go @@ -10,6 +10,7 @@ import ( "io/fs" "net/http" "os" + "strings" "github.com/gin-gonic/gin" healthcheck "github.com/tavsec/gin-healthcheck" @@ -100,9 +101,12 @@ func main() { r.GET("/version", routes.GetVersion) - soPingCheck := checks.NewPingCheck("https://stackoverflow.com", "GET", 5000, nil, nil) - sePingCheck := checks.NewPingCheck("https://stackexchange.com", "GET", 5000, nil, nil) - healthcheck.New(r, config.DefaultConfig(), []checks.Check{soPingCheck, sePingCheck}) + pingURL := "https://stackoverflow.com" + if strings.ToLower(os.Getenv("SCRAPER")) == "api" { + pingURL = "https://api.stackexchange.com/docs" + } + pingCheck := checks.NewPingCheck(pingURL, "GET", 5000, nil, nil) + healthcheck.New(r, config.DefaultConfig(), []checks.Check{pingCheck}) r.Run(fmt.Sprintf("%s:%s", host, port)) } diff --git a/src/healthcheck/healthcheck.go b/src/healthcheck/healthcheck.go index 24b2318..c539315 100644 --- a/src/healthcheck/healthcheck.go +++ b/src/healthcheck/healthcheck.go @@ -14,7 +14,8 @@ func main() { } url := os.Args[1] fmt.Println(url) - if _, err := http.Get(url); err != nil { + resp, err := http.Get(url) + if err != nil || resp.StatusCode != http.StatusOK { os.Exit(1) } }