| 1272 | } |
| 1273 | |
| 1274 | func (h *httpAPI) TargetsMetadata(ctx context.Context, matchTarget, metric, limit string) ([]MetricMetadata, error) { |
| 1275 | u := h.client.URL(epTargetsMetadata, nil) |
| 1276 | q := u.Query() |
| 1277 | |
| 1278 | q.Set("match_target", matchTarget) |
| 1279 | q.Set("metric", metric) |
| 1280 | q.Set("limit", limit) |
| 1281 | |
| 1282 | u.RawQuery = q.Encode() |
| 1283 | |
| 1284 | req, err := http.NewRequest(http.MethodGet, u.String(), nil) |
| 1285 | if err != nil { |
| 1286 | return nil, err |
| 1287 | } |
| 1288 | |
| 1289 | _, body, _, err := h.client.Do(ctx, req) |
| 1290 | if err != nil { |
| 1291 | return nil, err |
| 1292 | } |
| 1293 | |
| 1294 | var res []MetricMetadata |
| 1295 | err = json.Unmarshal(body, &res) |
| 1296 | return res, err |
| 1297 | } |
| 1298 | |
| 1299 | func (h *httpAPI) Metadata(ctx context.Context, metric, limit string) (map[string][]Metadata, error) { |
| 1300 | u := h.client.URL(epMetadata, nil) |