add health route
This commit is contained in:
@@ -36,6 +36,10 @@ type Reading struct {
|
||||
FetchedAt time.Time `json:"fetched_at"`
|
||||
}
|
||||
|
||||
type HealthResponse struct {
|
||||
Status string `json:"status"`
|
||||
}
|
||||
|
||||
func getEnv(key string) string {
|
||||
val := os.Getenv(key)
|
||||
if val == "" {
|
||||
@@ -243,6 +247,19 @@ func main() {
|
||||
})
|
||||
})
|
||||
|
||||
// GET /health
|
||||
http.HandleFunc("/health", func(w http.ResponseWriter, r *http.Request) {
|
||||
// TODO: Check if database is ready as well
|
||||
if r.Method != http.MethodGet {
|
||||
http.Error(w, "method not allowed", http.StatusMethodNotAllowed)
|
||||
return
|
||||
}
|
||||
okStatus := HealthResponse{Status: "ok"}
|
||||
|
||||
w.Header().Set("Content-Type", "application/json")
|
||||
json.NewEncoder(w).Encode(okStatus)
|
||||
})
|
||||
|
||||
// GET /weather/history?city=London&limit=10
|
||||
http.HandleFunc("/weather/history", func(w http.ResponseWriter, r *http.Request) {
|
||||
if r.Method != http.MethodGet {
|
||||
|
||||
Reference in New Issue
Block a user