From ede062000b3ae0c7c08bd65d777fd5b4dd8290e3 Mon Sep 17 00:00:00 2001 From: Fawad Halim Date: Thu, 5 Sep 2019 10:18:35 -0500 Subject: [PATCH 1/3] Allow setting TSDB block duration Signed-off-by: Fawad Halim --- cmd/thanos/receive.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/cmd/thanos/receive.go b/cmd/thanos/receive.go index 85cd5a0532..abbf20b369 100644 --- a/cmd/thanos/receive.go +++ b/cmd/thanos/receive.go @@ -60,6 +60,8 @@ func registerReceive(m map[string]setupFunc, app *kingpin.Application, name stri replicationFactor := cmd.Flag("receive.replication-factor", "How many times to replicate incoming write requests.").Default("1").Uint64() + tsdbBlockDuration := modelDuration(cmd.Flag("tsdb.blockduration", "Duration for local TSDB blocks").Default("2h")) + m[name] = func(g *run.Group, logger log.Logger, reg *prometheus.Registry, tracer opentracing.Tracer, _ bool) error { lset, err := parseFlagLabels(*labelStrs) if err != nil { @@ -106,6 +108,7 @@ func registerReceive(m map[string]setupFunc, app *kingpin.Application, name stri *tenantHeader, *replicaHeader, *replicationFactor, + *tsdbBlockDuration, ) } } @@ -130,6 +133,7 @@ func runReceive( tenantHeader string, replicaHeader string, replicationFactor uint64, + tsdbBlockDuration model.Duration, ) error { logger = log.With(logger, "component", "receive") level.Warn(logger).Log("msg", "setting up receive; the Thanos receive component is EXPERIMENTAL, it may break significantly without notice") @@ -137,8 +141,8 @@ func runReceive( tsdbCfg := &tsdb.Options{ RetentionDuration: retention, NoLockfile: true, - MinBlockDuration: model.Duration(time.Hour * 2), - MaxBlockDuration: model.Duration(time.Hour * 2), + MinBlockDuration: tsdbBlockDuration, + MaxBlockDuration: tsdbBlockDuration, } localStorage := &tsdb.ReadyStorage{} From 955a9a3d8245c199aeeca433262e08543f6fd577 Mon Sep 17 00:00:00 2001 From: Fawad Halim Date: Thu, 5 Sep 2019 14:21:55 -0500 Subject: [PATCH 2/3] PR feedback: corrected flag naming, made the flag hidden by default Signed-off-by: Fawad Halim --- cmd/thanos/receive.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/thanos/receive.go b/cmd/thanos/receive.go index abbf20b369..ec4591959c 100644 --- a/cmd/thanos/receive.go +++ b/cmd/thanos/receive.go @@ -60,7 +60,7 @@ func registerReceive(m map[string]setupFunc, app *kingpin.Application, name stri replicationFactor := cmd.Flag("receive.replication-factor", "How many times to replicate incoming write requests.").Default("1").Uint64() - tsdbBlockDuration := modelDuration(cmd.Flag("tsdb.blockduration", "Duration for local TSDB blocks").Default("2h")) + tsdbBlockDuration := modelDuration(cmd.Flag("tsdb.block-duration", "Duration for local TSDB blocks").Default("2h").Hidden()) m[name] = func(g *run.Group, logger log.Logger, reg *prometheus.Registry, tracer opentracing.Tracer, _ bool) error { lset, err := parseFlagLabels(*labelStrs) From 9ae912c4fb56e43c59896a233a884e9dfb189a1f Mon Sep 17 00:00:00 2001 From: Fawad Halim Date: Mon, 9 Sep 2019 12:00:32 -0500 Subject: [PATCH 3/3] Enable WALCompression on Receive service Signed-off-by: Fawad Halim --- cmd/thanos/receive.go | 1 + 1 file changed, 1 insertion(+) diff --git a/cmd/thanos/receive.go b/cmd/thanos/receive.go index ec4591959c..dde1579e8c 100644 --- a/cmd/thanos/receive.go +++ b/cmd/thanos/receive.go @@ -143,6 +143,7 @@ func runReceive( NoLockfile: true, MinBlockDuration: tsdbBlockDuration, MaxBlockDuration: tsdbBlockDuration, + WALCompression: true, } localStorage := &tsdb.ReadyStorage{}