libp2p / libp2p/go-libp2p

quic: make metrics collection independent of Prometheus' scrape frequency

Open
#1,429 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
6.9k
Forks
1.3k
Avg merge
13d 21h
Merged PRs (30d)
1

Description

Looping over the connections on a fixed interval would make the data returned to Prometheus independent of its scrape interval and the amount of Prometheus instances. E.g. if you have 3 Prometheus instances for high availability, you would be looping over the connections 3 times every scrape interval (e.g. minute). Instead, if you collect on a fixed interval (e.g. 1 minute) you would only loop over all collections once per minute, instead of 3 times per minute.

I think it is fine either way.

_Originally posted by @mxinden in https://github.com/libp2p/go-libp2p-quic-transport/pull/200#discussion_r606964540_

Contributor guide

No contributing guide indexed for this repository

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 QUIC metrics collection path and the code that exposes data to Prometheus; the issue does not name specific files or tests. Compare the current scrape-triggered connection loop with a fixed-interval collection approach, and consider how the existing metrics tests cover scrape frequency. Done means connection data is collected independently of the number and interval of Prometheus scrapes.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, prometheus
Domain
networking, observability
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.