mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-10-29 13:02:25 -05:00
[feature] Initial Prometheus metrics implementation (#2334)
* feat: Initial OTEL metrics * docs: add metrics documentation * fix: metrics endpoint conditional check * feat: metrics endpoint basic auth * fix: make metrics-auth-enabled default false * fix: go fmt helpers.gen.go * fix: add metric-related env vars to envparsing.sh * fix: metrics docs * fix: metrics related stuff in envparsing.sh * fix: metrics docs * chore: metrics docs wording * fix: metrics stuff in envparsing? * bump otel versions --------- Co-authored-by: Tsuribori <user@acertaindebian> Co-authored-by: Tsuribori <none@example.org> Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
This commit is contained in:
parent
16275853eb
commit
1ba3e14b36
251 changed files with 48389 additions and 22 deletions
45
vendor/github.com/technologize/otel-go-contrib/otelginmetrics/config.go
generated
vendored
Normal file
45
vendor/github.com/technologize/otel-go-contrib/otelginmetrics/config.go
generated
vendored
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
package otelginmetrics
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"go.opentelemetry.io/otel/attribute"
|
||||
semconv "go.opentelemetry.io/otel/semconv/v1.7.0"
|
||||
)
|
||||
|
||||
type config struct {
|
||||
recordInFlight bool
|
||||
recordSize bool
|
||||
recordDuration bool
|
||||
groupedStatus bool
|
||||
recorder Recorder
|
||||
attributes func(serverName, route string, request *http.Request) []attribute.KeyValue
|
||||
shouldRecord func(serverName, route string, request *http.Request) bool
|
||||
}
|
||||
|
||||
func defaultConfig() *config {
|
||||
return &config{
|
||||
recordInFlight: true,
|
||||
recordDuration: true,
|
||||
recordSize: true,
|
||||
groupedStatus: true,
|
||||
attributes: DefaultAttributes,
|
||||
shouldRecord: func(_, _ string, _ *http.Request) bool {
|
||||
return true
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
var DefaultAttributes = func(serverName, route string, request *http.Request) []attribute.KeyValue {
|
||||
attrs := []attribute.KeyValue{
|
||||
semconv.HTTPMethodKey.String(request.Method),
|
||||
}
|
||||
|
||||
if serverName != "" {
|
||||
attrs = append(attrs, semconv.HTTPServerNameKey.String(serverName))
|
||||
}
|
||||
if route != "" {
|
||||
attrs = append(attrs, semconv.HTTPRouteKey.String(route))
|
||||
}
|
||||
return attrs
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue