Add internal metric IDs, add nameserver request metric
This commit is contained in:
@@ -6,7 +6,10 @@ import (
|
||||
"github.com/safing/portbase/metrics"
|
||||
)
|
||||
|
||||
var requestsHistogram *metrics.Histogram
|
||||
var (
|
||||
requestsHistogram *metrics.Histogram
|
||||
totalHandledRequests *metrics.Counter
|
||||
)
|
||||
|
||||
func registerMetrics() (err error) {
|
||||
requestsHistogram, err = metrics.NewHistogram(
|
||||
@@ -15,7 +18,25 @@ func registerMetrics() (err error) {
|
||||
&metrics.Options{
|
||||
Permission: api.PermitUser,
|
||||
ExpertiseLevel: config.ExpertiseLevelExpert,
|
||||
})
|
||||
},
|
||||
)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return err
|
||||
totalHandledRequests, err = metrics.NewCounter(
|
||||
"nameserver/request/total",
|
||||
nil,
|
||||
&metrics.Options{
|
||||
InternalID: "handled_dns_requests",
|
||||
Permission: api.PermitUser,
|
||||
ExpertiseLevel: config.ExpertiseLevelExpert,
|
||||
Persist: true,
|
||||
},
|
||||
)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -84,6 +84,9 @@ func handleRequest(ctx context.Context, w dns.ResponseWriter, request *dns.Msg)
|
||||
defer tracer.Submit()
|
||||
tracer.Tracef("nameserver: handling new request for %s from %s:%d", q.ID(), remoteAddr.IP, remoteAddr.Port)
|
||||
|
||||
// Count request.
|
||||
totalHandledRequests.Inc()
|
||||
|
||||
// Setup quick reply function.
|
||||
reply := func(responder nsutil.Responder, rrProviders ...nsutil.RRProvider) error {
|
||||
err := sendResponse(ctx, w, request, responder, rrProviders...)
|
||||
|
||||
Reference in New Issue
Block a user