tsenart/vegeta · error

The plot reporter has been deprecated and succeeded by the v

Error message

The plot reporter has been deprecated and succeeded by the vegeta plot command

What it means

The `vegeta report -type=plot` path is hard-blocked: plot report generation was moved to a standalone `vegeta plot` command. This error directs users to the new subcommand instead of silently producing plots.

Source

Thrown at report.go:85

	defer mc.Close()
	if err != nil {
		return err
	}

	out, err := file(output, true)
	if err != nil {
		return err
	}
	defer out.Close()

	var (
		rep    vegeta.Reporter
		report vegeta.Report
	)

	switch typ {
	case "plot":
		return fmt.Errorf("The plot reporter has been deprecated and succeeded by the vegeta plot command")
	case "text":
		var m vegeta.Metrics
		rep, report = vegeta.NewTextReporter(&m), &m
	case "json":
		var m vegeta.Metrics
		if bucketsStr != "" {
			m.Histogram = &vegeta.Histogram{}
			if err := m.Histogram.Buckets.UnmarshalText([]byte(bucketsStr)); err != nil {
				return err
			}
		}
		rep, report = vegeta.NewJSONReporter(&m), &m
	case "hdrplot":
		var m vegeta.Metrics
		rep, report = vegeta.NewHDRHistogramPlotReporter(&m), &m
	default:
		switch {
		case strings.HasPrefix(typ, "hist"):

View on GitHub (pinned to cf58112690)

Solutions

  1. Replace `vegeta report -type=plot` with the `vegeta plot` command.
  2. Adjust scripts: `vegeta plot results.bin > plot.html` instead of `vegeta report -type=plot results.bin > plot.html`.
  3. Check `vegeta plot -h` for plot-specific flags (title, threshold) that were previously not part of report.
  4. Pin the vegeta version in CI if you must keep legacy behavior.

Example fix

// before
vegeta report -type=plot results.bin > plot.html
// after
vegeta plot results.bin > plot.html
Defensive patterns

Strategy: fallback

Validate before calling

func reportCmd(typ string) string {
    if typ == "plot" {
        return "vegeta plot" // route to standalone command
    }
    return "vegeta report"
}

Try / catch

if err := runVegeta("report", "-type=plot", file); err != nil {
    if strings.Contains(err.Error(), "plot reporter has been deprecated") {
        return runVegeta("plot", file)
    }
    return err
}

Prevention

When it happens

Trigger: Running `vegeta report -type=plot results.bin` (or -type=plot with any arguments) on a vegeta version where the plot reporter was removed from the report command.

Common situations: Older scripts written against pre-deprecation vegeta versions still passing -type=plot; CI pipelines upgraded vegeta but not the scripts.

Related errors


AI-assisted analysis of tsenart/vegeta@cf58112690 (2026-08-31). Data as JSON: /api/errors/a68d1a0c822d7c3d. Report an issue: GitHub.