netquery: add Server-Timing HTTP header for better SQL query analysis

This commit is contained in:
Patrick Pacher 2023-09-14 08:49:02 +02:00
parent 8b4a7330be
commit 2603e42d4e
4 changed files with 31 additions and 13 deletions

View file

@ -7,6 +7,7 @@ import (
"time"
"github.com/hashicorp/go-multierror"
servertiming "github.com/mitchellh/go-server-timing"
"github.com/safing/portbase/api"
"github.com/safing/portbase/config"
@ -93,7 +94,7 @@ func (m *module) prepare() error {
Read: api.PermitUser, // Needs read+write as the query is sent using POST data.
Write: api.PermitUser, // Needs read+write as the query is sent using POST data.
BelongsTo: m.Module,
HandlerFunc: queryHander.ServeHTTP,
HandlerFunc: servertiming.Middleware(queryHander, nil).ServeHTTP,
}); err != nil {
return fmt.Errorf("failed to register API endpoint: %w", err)
}
@ -105,7 +106,7 @@ func (m *module) prepare() error {
MimeType: "application/json",
Write: api.PermitUser,
BelongsTo: m.Module,
HandlerFunc: chartHandler.ServeHTTP,
HandlerFunc: servertiming.Middleware(chartHandler, nil).ServeHTTP,
}); err != nil {
return fmt.Errorf("failed to register API endpoint: %w", err)
}