* refactor: Replace ctx.Done() with ctx.Err()
Prior to this commit we checked for context cancellation with a select
block and context.Context.Done() without multiplexing over any other
channel like:
select {
case <-ctx.Done():
// handle cancellation
default:
// fallthrough
}
This commit replaces those type of blocks with a simple check of
ctx.Err(). This has the following benefits:
* Calling ctx.Err() is much faster than entering a select block.
* ctx.Done() allocates a channel when called for the first time.
* Testing the result of ctx.Err() is a reliable way of determininging if
a context.Context value has been canceled.
* fix: Fix data race in execDeleteTagValueEntry()
|
||
|---|---|---|
| .. | ||
| README.md | ||
| handler.go | ||
| handler_test.go | ||
| metrics.go | ||
| push.go | ||
| push_test.go | ||
| reporter.go | ||
| reporter_test.go | ||
| store.go | ||
| telemetry_test.go | ||
| timestamps.go | ||
| timestamps_test.go | ||
README.md
Telemetry Data
Telemetry is first collected by retrieving prometheus data from a Gatherer. Next, the collected data is filtered by matching a subset of prometheus families. Finally, the data is transmitted to a prometheus push gateway handler.
The handler enriches the metrics with the timestamp when the data is received.