forked from TrueCloudLab/frostfs-node
Add Inner Ring code
This commit is contained in:
parent
dadfd90dcd
commit
b7b5079934
400 changed files with 11420 additions and 8690 deletions
49
cmd/neofs-node/modules/network/http.go
Normal file
49
cmd/neofs-node/modules/network/http.go
Normal file
|
@ -0,0 +1,49 @@
|
|||
package network
|
||||
|
||||
import (
|
||||
"github.com/fasthttp/router"
|
||||
svc "github.com/nspcc-dev/neofs-node/cmd/neofs-node/modules/bootstrap"
|
||||
"github.com/valyala/fasthttp"
|
||||
"go.uber.org/dig"
|
||||
)
|
||||
|
||||
type (
|
||||
handlerParams struct {
|
||||
dig.In
|
||||
|
||||
Healthy svc.HealthyClient
|
||||
}
|
||||
)
|
||||
|
||||
const (
|
||||
healthyState = "NeoFS node is "
|
||||
defaultContentType = "text/plain; charset=utf-8"
|
||||
)
|
||||
|
||||
func newHTTPHandler(p handlerParams) (fasthttp.RequestHandler, error) {
|
||||
r := router.New()
|
||||
r.RedirectTrailingSlash = true
|
||||
|
||||
r.GET("/-/ready/", func(c *fasthttp.RequestCtx) {
|
||||
c.SetStatusCode(fasthttp.StatusOK)
|
||||
c.SetBodyString(healthyState + "ready")
|
||||
})
|
||||
|
||||
r.GET("/-/healthy/", func(c *fasthttp.RequestCtx) {
|
||||
code := fasthttp.StatusOK
|
||||
msg := "healthy"
|
||||
|
||||
err := p.Healthy.Healthy()
|
||||
if err != nil {
|
||||
code = fasthttp.StatusBadRequest
|
||||
msg = "unhealthy: " + err.Error()
|
||||
}
|
||||
|
||||
c.Response.Reset()
|
||||
c.SetStatusCode(code)
|
||||
c.SetContentType(defaultContentType)
|
||||
c.SetBodyString(healthyState + msg)
|
||||
})
|
||||
|
||||
return r.Handler, nil
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue