MetricsForLabelMatchers returns all the metrics which match a set of matchers.
(ctx context.Context, req *client.MetricsForLabelMatchersRequest)
| 2105 | |
| 2106 | // MetricsForLabelMatchers returns all the metrics which match a set of matchers. |
| 2107 | func (i *Ingester) MetricsForLabelMatchers(ctx context.Context, req *client.MetricsForLabelMatchersRequest) (result *client.MetricsForLabelMatchersResponse, err error) { |
| 2108 | defer recoverIngester(i.logger, &err) |
| 2109 | |
| 2110 | userID, userErr := users.TenantID(ctx) |
| 2111 | if userErr != nil { |
| 2112 | return nil, userErr |
| 2113 | } |
| 2114 | |
| 2115 | // Set pprof labels for profiling |
| 2116 | pprof.Do(ctx, pprof.Labels("user", userID), func(ctx context.Context) { |
| 2117 | result = &client.MetricsForLabelMatchersResponse{} |
| 2118 | var cleanup func() |
| 2119 | cleanup, err = i.metricsForLabelMatchersCommon(ctx, req, func(l labels.Labels) error { |
| 2120 | result.Metric = append(result.Metric, &cortexpb.Metric{ |
| 2121 | Labels: cortexpb.FromLabelsToLabelAdapters(l), |
| 2122 | }) |
| 2123 | return nil |
| 2124 | }) |
| 2125 | defer cleanup() |
| 2126 | }) |
| 2127 | return result, err |
| 2128 | } |
| 2129 | |
| 2130 | func (i *Ingester) MetricsForLabelMatchersStream(req *client.MetricsForLabelMatchersRequest, stream client.Ingester_MetricsForLabelMatchersStreamServer) (err error) { |
| 2131 | defer recoverIngester(i.logger, &err) |
nothing calls this directly
no test coverage detected