mirror of
https://github.com/prometheus/prometheus
synced 2024-12-25 07:52:28 +00:00
web/api: fix min/max timestamps to valid range
This commit is contained in:
parent
c691895a0f
commit
157e698958
@ -18,6 +18,7 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/prometheus/common/model"
|
||||
"github.com/stretchr/testify/require"
|
||||
"golang.org/x/net/context"
|
||||
|
||||
"github.com/prometheus/prometheus/pkg/labels"
|
||||
@ -209,8 +210,13 @@ func TestTemplateExpansion(t *testing.T) {
|
||||
t.Fatalf("get appender: %s", err)
|
||||
}
|
||||
|
||||
app.Add(labels.FromStrings(labels.MetricName, "metric", "instance", "a"), 0, 11)
|
||||
app.Add(labels.FromStrings(labels.MetricName, "metric", "instance", "b"), 0, 21)
|
||||
aref, err := app.SetSeries(labels.FromStrings(labels.MetricName, "metric", "instance", "a"))
|
||||
require.NoError(t, err)
|
||||
bref, err := app.SetSeries(labels.FromStrings(labels.MetricName, "metric", "instance", "b"))
|
||||
require.NoError(t, err)
|
||||
|
||||
app.Add(aref, 0, 11)
|
||||
app.Add(bref, 0, 21)
|
||||
|
||||
if err := app.Commit(); err != nil {
|
||||
t.Fatalf("commit samples: %s", err)
|
||||
|
@ -258,6 +258,11 @@ func (api *API) labelValues(r *http.Request) (interface{}, *apiError) {
|
||||
return vals, nil
|
||||
}
|
||||
|
||||
var (
|
||||
minTime = time.Unix(math.MinInt64/1000+62135596801, 0)
|
||||
maxTime = time.Unix(math.MaxInt64/1000-62135596801, 999999999)
|
||||
)
|
||||
|
||||
func (api *API) series(r *http.Request) (interface{}, *apiError) {
|
||||
r.ParseForm()
|
||||
if len(r.Form["match[]"]) == 0 {
|
||||
@ -272,7 +277,7 @@ func (api *API) series(r *http.Request) (interface{}, *apiError) {
|
||||
return nil, &apiError{errorBadData, err}
|
||||
}
|
||||
} else {
|
||||
start = time.Unix(math.MinInt64, 0)
|
||||
start = minTime
|
||||
}
|
||||
|
||||
var end time.Time
|
||||
@ -283,8 +288,9 @@ func (api *API) series(r *http.Request) (interface{}, *apiError) {
|
||||
return nil, &apiError{errorBadData, err}
|
||||
}
|
||||
} else {
|
||||
end = time.Unix(math.MaxInt64, 0)
|
||||
end = maxTime
|
||||
}
|
||||
fmt.Println("q range", timestamp.FromTime(start), timestamp.FromTime(end), r.FormValue("start"), r.FormValue("end"))
|
||||
|
||||
var matcherSets [][]*labels.Matcher
|
||||
for _, s := range r.Form["match[]"] {
|
||||
|
@ -429,6 +429,7 @@ func TestEndpoints(t *testing.T) {
|
||||
api.context = func(r *http.Request) context.Context {
|
||||
return ctx
|
||||
}
|
||||
t.Logf("run query %q", test.query.Encode())
|
||||
|
||||
req, err := http.NewRequest("ANY", fmt.Sprintf("http://example.com?%s", test.query.Encode()), nil)
|
||||
if err != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user