Don't federate stale samples

pull/1268/head
Fabian Reinartz 9 years ago
parent 5af6dda58c
commit b35e25a082

@ -46,11 +46,13 @@ func (h *Handler) federation(w http.ResponseWriter, req *http.Request) {
}
}
format := expfmt.Negotiate(req.Header)
var (
minTimestamp = model.Now().Add(-promql.StalenessDelta)
format = expfmt.Negotiate(req.Header)
enc = expfmt.NewEncoder(w, format)
)
w.Header().Set("Content-Type", string(format))
enc := expfmt.NewEncoder(w, format)
protMetric := &dto.Metric{
Label: []*dto.LabelPair{},
Untyped: &dto.Untyped{},
@ -64,7 +66,8 @@ func (h *Handler) federation(w http.ResponseWriter, req *http.Request) {
globalUsed := map[model.LabelName]struct{}{}
sp := h.storage.LastSamplePairForFingerprint(fp)
if sp == nil {
// Discard if sample does not exist or lays before the staleness interval.
if sp == nil || sp.Timestamp.Before(minTimestamp) {
continue
}

@ -134,7 +134,7 @@ func webUiTemplatesAlertsHtml() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "web/ui/templates/alerts.html", size: 1707, mode: os.FileMode(420), modTime: time.Unix(1448976906, 0)}
info := bindataFileInfo{name: "web/ui/templates/alerts.html", size: 1707, mode: os.FileMode(420), modTime: time.Unix(1450269200, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}

Loading…
Cancel
Save