Instrumentation: Add status_source label to request metrics/logs (#74114)
Ref #68480 Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
This commit is contained in:
co-authored by
Giuseppe Guerra
parent
97d568e60a
commit
8ee43f3705
@@ -10,6 +10,7 @@ import (
|
||||
"time"
|
||||
|
||||
glog "github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/middleware/requestmeta"
|
||||
"github.com/grafana/grafana/pkg/services/contexthandler"
|
||||
)
|
||||
|
||||
@@ -103,6 +104,8 @@ func modifyResponse(logger glog.Logger) func(resp *http.Response) error {
|
||||
|
||||
SetProxyResponseHeaders(resp.Header)
|
||||
SetViaHeader(resp.Header, resp.ProtoMajor, resp.ProtoMinor)
|
||||
|
||||
requestmeta.WithStatusSource(resp.Request.Context(), resp.StatusCode)
|
||||
return nil
|
||||
}
|
||||
}
|
||||
@@ -120,6 +123,7 @@ type timeoutError interface {
|
||||
func errorHandler(logger glog.Logger) func(http.ResponseWriter, *http.Request, error) {
|
||||
return func(w http.ResponseWriter, r *http.Request, err error) {
|
||||
ctxLogger := logger.FromContext(r.Context())
|
||||
requestmeta.WithDownstreamStatusSource(r.Context())
|
||||
|
||||
if errors.Is(err, context.Canceled) {
|
||||
ctxLogger.Debug("Proxy request cancelled by client")
|
||||
|
||||
Reference in New Issue
Block a user