Component(s)
receiver/httpcheck
What happened?
In scraper.go, RecordHttpcheckTLSCertRemainingDataPoint is invoked twice within
the same scrape goroutine for every HTTPS endpoint:
- First call: lines 353–366 (inside the
mux.Lock() block, before timing metrics)
- Second call: lines 404–417 (later in the same block)
Both blocks extract TLS info from resp.TLS and record the data point, resulting in
duplicate metric emissions per scrape cycle.
Steps to Reproduce
- Configure
httpcheckreceiver targeting an HTTPS endpoint
- Enable
httpcheck.tls.cert_remaining metric
- Observe duplicate data points emitted per scrape
Expected Result
httpcheck.tls.cert_remaining is recorded exactly once per endpoint per scrape.
Actual Result
It is recorded twice, producing duplicate data points.
Additional context
Fix is straightforward — remove the first duplicate block (lines 353–366).
Collector version
v0.150.0
Tip
React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. Learn more here.
Component(s)
receiver/httpcheck
What happened?
In
scraper.go,RecordHttpcheckTLSCertRemainingDataPointis invoked twice withinthe same scrape goroutine for every HTTPS endpoint:
mux.Lock()block, before timing metrics)Both blocks extract TLS info from
resp.TLSand record the data point, resulting induplicate metric emissions per scrape cycle.
Steps to Reproduce
httpcheckreceivertargeting an HTTPS endpointhttpcheck.tls.cert_remainingmetricExpected Result
httpcheck.tls.cert_remainingis recorded exactly once per endpoint per scrape.Actual Result
It is recorded twice, producing duplicate data points.
Additional context
Fix is straightforward — remove the first duplicate block (lines 353–366).
Collector version
v0.150.0
Tip
React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding
+1orme too, to help us triage it. Learn more here.