quickwit-oss / quickwit-oss/quickwit

More granularity to the quickwit_http_requests_total metric

Open
#5,770 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Rust
Stars
11.7k
Forks
597
Avg merge
2d 22h
Merged PRs (30d)
37

Description

Is your feature request related to a problem? Please describe.
When looking at a cluster or a node, it is very useful to correlate "behavior metrics" (e.g resource usage) with "usage metrics" (number of requests, ingested bytes). As the HTTP API is one of the core user interfaces, it would be good to have a more accurate view on the kind of endpoints that are used. For instance, we want to be able to filter out healthcheck calls. It is also very useful to detect unexpected client activities (e.g search queries sent to indexers).

Describe the solution you'd like
Add an "endpoint" label to quickwit_http_requests_total

Describe alternatives you've considered
We could also group endpoints to decrease cardinality, but the information loss is probably not worth the benefit, especially when taking into account that a node is usually specialized (e.g search) and only receives requests to a small subset of the API.

Additional context
Add any other context or information about the feature request here.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the quickwit_http_requests_total metric definition and the HTTP API request instrumentation. Trace how requests are associated with endpoints, then verify that the metric exposes an endpoint label and that healthcheck and other API requests can be distinguished in the exported metrics.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
api, observability
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.