From c80b31a0d441fe096169d128bc8eb2810cb77d6a Mon Sep 17 00:00:00 2001 From: Sven Grossmann Date: Tue, 26 Mar 2024 18:15:35 +0100 Subject: [PATCH] Loki: Remove API restrictions on resource calls (#85191) Loki: Remove API restrictions --- pkg/tsdb/loki/loki.go | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/pkg/tsdb/loki/loki.go b/pkg/tsdb/loki/loki.go index 94d2d6d2891..1d31f500c2d 100644 --- a/pkg/tsdb/loki/loki.go +++ b/pkg/tsdb/loki/loki.go @@ -6,7 +6,6 @@ import ( "fmt" "net/http" "regexp" - "strings" "sync" "time" @@ -120,18 +119,7 @@ func (s *Service) CallResource(ctx context.Context, req *backend.CallResourceReq func callResource(ctx context.Context, req *backend.CallResourceRequest, sender backend.CallResourceResponseSender, dsInfo *datasourceInfo, plog log.Logger, tracer tracing.Tracer) error { url := req.URL - // a very basic is-this-url-valid check - if req.Method != "GET" { - plog.Error("Invalid HTTP method", "method", req.Method) - return fmt.Errorf("invalid HTTP method: %s", req.Method) - } - if (!strings.HasPrefix(url, "labels?")) && - (!strings.HasPrefix(url, "label/")) && // the `/label/$label_name/values` form - (!strings.HasPrefix(url, "series?")) && - (!strings.HasPrefix(url, "index/stats?")) { - plog.Error("Invalid URL", "url", url) - return fmt.Errorf("invalid URL: %s", url) - } + lokiURL := fmt.Sprintf("/loki/api/v1/%s", url) ctx, span := tracer.Start(ctx, "datasource.loki.CallResource", trace.WithAttributes(