Add healtcheck endpoint
This commit is contained in:
parent
db8372f6db
commit
c952c8d3cf
@ -25,4 +25,5 @@ COPY --from=builder /app/etc/apiary/apiary.toml /app/apiary.toml
|
|||||||
COPY --from=builder /app/bin/apiary /app/apiary
|
COPY --from=builder /app/bin/apiary /app/apiary
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
EXPOSE 2222
|
EXPOSE 2222
|
||||||
|
HEALTHCHECK --interval=1m --timeout=10s --start-period=5s --retries=3 CMD curl -s -o /dev/null -w "%{http_code}" http://127.0.0.1:8080/api/health || exit 1
|
||||||
CMD ["/app/apiary", "serve"]
|
CMD ["/app/apiary", "serve"]
|
@ -96,6 +96,7 @@ func NewServer(cfg config.FrontendConfig, hs *ssh.HoneypotServer, store store.Lo
|
|||||||
r.Get("/stats", s.HandlerStats)
|
r.Get("/stats", s.HandlerStats)
|
||||||
r.Get("/stream", s.HandlerAttemptStream)
|
r.Get("/stream", s.HandlerAttemptStream)
|
||||||
r.Get("/query", s.HandlerQuery)
|
r.Get("/query", s.HandlerQuery)
|
||||||
|
r.Get("/health", s.HandlerHealth)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
s.Handler = r
|
s.Handler = r
|
||||||
@ -273,6 +274,15 @@ func (s *Server) HandlerQuery(w http.ResponseWriter, r *http.Request) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *Server) HandlerHealth(w http.ResponseWriter, r *http.Request) {
|
||||||
|
err := s.store.IsHealthy()
|
||||||
|
if err != nil {
|
||||||
|
s.WriteAPIError(w, r, http.StatusInternalServerError, fmt.Sprintf("Health error: %s", err))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
w.Write([]byte(`{}`))
|
||||||
|
}
|
||||||
|
|
||||||
type APIErrorResponse struct {
|
type APIErrorResponse struct {
|
||||||
Error string `json:"error"`
|
Error string `json:"error"`
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user