From 30ca799ca787b1d9bad4c6b7866757362d43a510 Mon Sep 17 00:00:00 2001 From: Martin Chodur Date: Tue, 8 May 2018 13:35:06 +0200 Subject: [PATCH] feat cmd/tsdb: added human readable print for timestamps on block list --- cmd/tsdb/main.go | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/cmd/tsdb/main.go b/cmd/tsdb/main.go index bca446199..55d0bd626 100644 --- a/cmd/tsdb/main.go +++ b/cmd/tsdb/main.go @@ -24,6 +24,7 @@ import ( "runtime" "runtime/pprof" "sort" + "strconv" "strings" "sync" "text/tabwriter" @@ -45,6 +46,7 @@ func main() { benchWriteNumMetrics = benchWriteCmd.Flag("metrics", "number of metrics to read").Default("10000").Int() benchSamplesFile = benchWriteCmd.Arg("file", "input file with samples data, default is (../../testdata/20k.series)").Default("../../testdata/20k.series").String() listCmd = cli.Command("ls", "list db blocks") + listCmdHumanReadable = listCmd.Flag("human-readable", "print human readable values").Short('h').Bool() listPath = listCmd.Arg("db path", "database path (default is benchout/storage)").Default("benchout/storage").String() ) @@ -61,7 +63,7 @@ func main() { if err != nil { exitWithError(err) } - printBlocks(db.Blocks()) + printBlocks(db.Blocks(), listCmdHumanReadable) } flag.CommandLine.Set("log.level", "debug") } @@ -344,7 +346,7 @@ func exitWithError(err error) { os.Exit(1) } -func printBlocks(blocks []*tsdb.Block) { +func printBlocks(blocks []*tsdb.Block, humanReadable *bool) { tw := tabwriter.NewWriter(os.Stdout, 0, 0, 2, ' ', 0) defer tw.Flush() @@ -355,11 +357,18 @@ func printBlocks(blocks []*tsdb.Block) { fmt.Fprintf(tw, "%v\t%v\t%v\t%v\t%v\t%v\n", meta.ULID, - meta.MinTime, - meta.MaxTime, + getFormatedTime(meta.MinTime, humanReadable), + getFormatedTime(meta.MaxTime, humanReadable), meta.Stats.NumSamples, meta.Stats.NumChunks, meta.Stats.NumSeries, ) } } + +func getFormatedTime(timestamp int64, humanReadable *bool) string { + if *humanReadable { + return time.Unix(timestamp/1000, 0).String() + } + return strconv.FormatInt(timestamp, 10) +}