Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add gauge for number of bytes in upload queue #3922

Closed
problame opened this issue Mar 31, 2023 · 0 comments · Fixed by #3951
Closed

add gauge for number of bytes in upload queue #3922

problame opened this issue Mar 31, 2023 · 0 comments · Fixed by #3951
Assignees
Labels
a/observability Area: related to observability c/storage/pageserver Component: storage: pageserver

Comments

@problame
Copy link
Contributor

Need this for the "worst-case /storage usage panel".

Per-timeline would be nice, but global is sufficient.

@problame problame added the c/storage/pageserver Component: storage: pageserver label Apr 3, 2023
@problame problame added the a/observability Area: related to observability label Apr 4, 2023
problame added a commit that referenced this issue Apr 25, 2023
For the "worst-case /storage usage panel", we need to compute
```
remote size + local-only size
```

We currently don't have a metric for local-only layers.

The number of in-flight layers in the upload queue is just that, so, let
Prometheus scrape it.

The metric is two counters (started and finished).
The delta is the amount of in-flight uploads in the queue.

The metrics are incremented in the respective `call_unfinished_metric_*`
functions.
These track ongoing operations by file_kind and op_kind.
We only need this metric for layer uploads, so, there's the new
RemoteTimelineClientMetricsCallTrackSize type that forces all call sites
to decide whether they want the size tracked or not.
If we find that other file_kinds or op_kinds are interesting (metadata
uploads, layer downloads, layer deletes) are interesting, we can just
enable them, and they'll be just another label combination within the
metrics that this PR adds.

fixes #3922
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a/observability Area: related to observability c/storage/pageserver Component: storage: pageserver
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants