Pass logger to fasthttp

- Use a logger with `FASTHTTP` prefix as fasthttp's logger so it's easy
to see what fasthttp is logging in console/journal.
This commit is contained in:
Gusted 2022-07-03 02:12:19 +02:00
parent 6dedd55eb3
commit 4789d2e869
No known key found for this signature in database
GPG key ID: FD821B732837125F

View file

@ -5,12 +5,20 @@ import (
"net/http"
"time"
"github.com/rs/zerolog/log"
"github.com/valyala/fasthttp"
"codeberg.org/codeberg/pages/server/cache"
"codeberg.org/codeberg/pages/server/utils"
)
type fasthttpLogger struct{}
func (fasthttpLogger) Printf(format string, args ...interface{}) {
log.Printf("[FASTHTTP] "+format, args...)
}
func SetupServer(handler fasthttp.RequestHandler) *fasthttp.Server {
// Enable compression by wrapping the handler with the compression function provided by FastHTTP
compressedHandler := fasthttp.CompressHandlerBrotliLevel(handler, fasthttp.CompressBrotliBestSpeed, fasthttp.CompressBestSpeed)
@ -22,6 +30,7 @@ func SetupServer(handler fasthttp.RequestHandler) *fasthttp.Server {
NoDefaultDate: true,
ReadTimeout: 30 * time.Second, // needs to be this high for ACME certificates with ZeroSSL & HTTP-01 challenge
Concurrency: 1024 * 32, // TODO: adjust bottlenecks for best performance with Gitea!
Logger: fasthttpLogger{},
}
}