Browse Source

Merge pull request #8575 from pfreixes/add-scrapes-parameter

Add num scrapes as tsdb write benchmark command flag
pull/8587/head
Julien Pivotto 4 years ago committed by GitHub
parent
commit
63ea88af82
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 3
      cmd/promtool/main.go
  2. 4
      cmd/promtool/tsdb.go

3
cmd/promtool/main.go

@ -124,6 +124,7 @@ func main() {
tsdbBenchWriteCmd := tsdbBenchCmd.Command("write", "Run a write performance benchmark.")
benchWriteOutPath := tsdbBenchWriteCmd.Flag("out", "Set the output path.").Default("benchout").String()
benchWriteNumMetrics := tsdbBenchWriteCmd.Flag("metrics", "Number of metrics to read.").Default("10000").Int()
benchWriteNumScrapes := tsdbBenchWriteCmd.Flag("scrapes", "Number of scrapes to simulate.").Default("3000").Int()
benchSamplesFile := tsdbBenchWriteCmd.Arg("file", "Input file with samples data, default is ("+filepath.Join("..", "..", "tsdb", "testdata", "20kseries.json")+").").Default(filepath.Join("..", "..", "tsdb", "testdata", "20kseries.json")).String()
tsdbAnalyzeCmd := tsdbCmd.Command("analyze", "Analyze churn, label pair cardinality.")
@ -195,7 +196,7 @@ func main() {
os.Exit(RulesUnitTest(*testRulesFiles...))
case tsdbBenchWriteCmd.FullCommand():
os.Exit(checkErr(benchmarkWrite(*benchWriteOutPath, *benchSamplesFile, *benchWriteNumMetrics)))
os.Exit(checkErr(benchmarkWrite(*benchWriteOutPath, *benchSamplesFile, *benchWriteNumMetrics, *benchWriteNumScrapes)))
case tsdbAnalyzeCmd.FullCommand():
os.Exit(checkErr(analyzeBlock(*analyzePath, *analyzeBlockID, *analyzeLimit)))

4
cmd/promtool/tsdb.go

@ -58,7 +58,7 @@ type writeBenchmark struct {
logger log.Logger
}
func benchmarkWrite(outPath, samplesFile string, numMetrics int) error {
func benchmarkWrite(outPath, samplesFile string, numMetrics, numScrapes int) error {
b := &writeBenchmark{
outPath: outPath,
samplesFile: samplesFile,
@ -118,7 +118,7 @@ func benchmarkWrite(outPath, samplesFile string, numMetrics int) error {
if err := b.startProfiling(); err != nil {
return err
}
total, err = b.ingestScrapes(lbs, 3000)
total, err = b.ingestScrapes(lbs, numScrapes)
if err != nil {
return err
}

Loading…
Cancel
Save