Runs & Insights

A run is one execution of a script. Straden captures everything k6 produces — the summary, the console log and every metric sample — and can turn it into an AI performance report.


Starting a run

Open a script and press Run, or call start-run over MCP. The run is queued on the dedicated runs queue and picked up by the runner container within seconds. Only one run per script executes at a time; starting a script that is already running waits until the current run finishes. Different scripts, in the same test or in different tests, can run at the same time. Each run is its own k6 process, so parallel runs share the runner's CPU, memory and network, and heavy parallel runs can affect each other's results.

Run statuses

StatusMeaning
queuedWaiting for the runner.
runningk6 is generating load.
passedk6 exited cleanly — all thresholds met.
failedOne or more thresholds were crossed.
abortedCancelled by a user or killed by a signal.
errork6 couldn't start or crashed. The log tail is attached to the run.

Runs list

Each project's Runs page lists every run with its test, script, status and duration, 15 per page. Search by test or script name and sort by any column.

The run page

Header: started at, completed at, duration, and Cancel Run while the run is active.

Performance metrics:

Metric
Total requestsRequest rate
Average response timeP95 / P99 duration
Error rateData transferred
Checks passedIterations
Active VUs

Thresholds and checks: a pass/fail row for every threshold and check in the script.

Response codes: how the HTTP status codes were distributed.

Time-series charts: VUs, request rate, p95/p99 latency and error rate in 5-second buckets, queried from InfluxDB. You can also show HTTP timing, iteration duration and iteration charts.

Endpoint filter: narrow the charts and stats to one endpoint to see its hits, p95/p99 and failure rate.

Logs: View run logs opens a terminal that streams the k6 console output as it's written.

Endpoint grouping

Dynamic URLs are grouped so /users/42 and /users/97 count as one endpoint. Path segments that look like IDs become {id}:

  • integers
  • UUIDs
  • 24-character hex strings (MongoDB ObjectIds)
  • opaque tokens of 20 or more URL-safe characters

Grouped endpoints are labelled by their last two path segments. Setting a name tag on requests in k6 also works.

Cancelling

Cancel Run stops a queued run straight away. For a running test, the runner sends SIGTERM to k6 so it can write its summary, and the run is marked aborted.

Run logs

k6 console logs are kept while a run is active. Toggle Persist run logs on a project to keep them after the run finishes, so they're available to the Run Insight agent and the read-run-log MCP tool later. Persisted logs live in the storage volume.

Generating an insight

On a finished run, open the AI Insights panel and press Generate insights. An admin must pick an insights model first (Settings → Insights model). You can't generate insights while the run is still active. The Run Insight agent (see AI agents) investigates:

  1. Metrics — the k6 summary, thresholds and InfluxDB time-series.
  2. Logs — warnings and per-VU errors the metrics miss.
  3. Code — the k6 script and, if attached, the application repositories.
  4. Infrastructure — Prometheus, database and Redis metrics from attached connectors.

It returns an overall health rating (healthy, acceptable, poor), a summary, findings ranked by severity, concrete recommendations and notes on the script itself. You're notified when the insight is ready. Regenerate reruns the analysis, and Export downloads the report as a Markdown file (insight-<run>.md).

Notifications

Notifications appear in the app and are pushed live over WebSockets. Straden doesn't send them by email.

NotificationSent to
Run passed / failed / abortedThe user who started the run
Run insights ready / failedThe user who requested the insight
Script generation completeThe user chatting with the agent
Repository synced / sync failedThe user who started the sync

The bell shows your unread count and the latest 5 notifications. The Notifications page lets you filter all or unread, mark notifications read or unread, and delete them.