Directories
¶
| Path | Synopsis |
|---|---|
|
Package agent is stampede agent: a helper that runs inside the user's environment and injects faults into dependencies during a load test.
|
Package agent is stampede agent: a helper that runs inside the user's environment and injects faults into dependencies during a load test. |
|
Package ai generates Stampede scenarios with a language model, before any load is run.
|
Package ai generates Stampede scenarios with a language model, before any load is run. |
|
provider
Package provider talks to large language model APIs for Stampede's optional AI journey generation.
|
Package provider talks to large language model APIs for Stampede's optional AI journey generation. |
|
api
|
|
|
gen
Package gen provides primitives to interact with the openapi HTTP API.
|
Package gen provides primitives to interact with the openapi HTTP API. |
|
Package auth handles passwords, session and API tokens, roles and the identity of the caller.
|
Package auth handles passwords, session and API tokens, roles and the identity of the caller. |
|
Package cli wires the stampede command tree.
|
Package cli wires the stampede command tree. |
|
Package client is a small client for the Stampede REST API, used by the CLI and the terminal UI.
|
Package client is a small client for the Stampede REST API, used by the CLI and the terminal UI. |
|
Package coordinator is the server side of distributed execution.
|
Package coordinator is the server side of distributed execution. |
|
Package crawl visits a web application in headless Chrome, like one visitor clicking through it, and records what it saw: the pages, their forms, and every document and API request the pages made, as a HAR recording.
|
Package crawl visits a web application in headless Chrome, like one visitor clicking through it, and records what it saw: the pages, their forms, and every document and API request the pages made, as a HAR recording. |
|
Package cron parses standard five-field cron expressions and works out when they next fire, in UTC or an IANA time zone.
|
Package cron parses standard five-field cron expressions and works out when they next fire, in UTC or an IANA time zone. |
|
Package engine executes a compiled scenario: it runs virtual users under a load plan, records every request and emits one metrics snapshot per interval.
|
Package engine executes a compiled scenario: it runs virtual users under a load plan, records every request and emits one metrics snapshot per interval. |
|
Package feed provides the test-data sources that are more than a file: rows of generated fake data and rows read from a database query.
|
Package feed provides the test-data sources that are more than a file: rows of generated fake data and rows read from a database query. |
|
Package health watches the load generator itself: CPU, scheduling lag, dropped iterations, GC pauses, file descriptors, ephemeral ports and network throughput.
|
Package health watches the load generator itself: CPU, scheduling lag, dropped iterations, GC pauses, file descriptors, ephemeral ports and network throughput. |
|
Package keyring encrypts secrets at rest with AES-256-GCM envelope encryption: every value gets a fresh data key, and the data key is encrypted ("wrapped") with the server's master key.
|
Package keyring encrypts secrets at rest with AES-256-GCM envelope encryption: every value gets a fresh data key, and the data key is encrypted ("wrapped") with the server's master key. |
|
Package metrics records latencies and counters during a run and merges them losslessly across intervals and workers.
|
Package metrics records latencies and counters during a run and merges them losslessly across intervals and workers. |
|
Package notify delivers run events to notification channels: a generic webhook signed with HMAC-SHA256, a Slack incoming webhook or a Discord webhook.
|
Package notify delivers run events to notification channels: a generic webhook signed with HMAC-SHA256, a Slack incoming webhook or a Discord webhook. |
|
Package observe connects a run to the target's own telemetry: it queries Prometheus for the target's metrics over the run, for the report.
|
Package observe connects a run to the target's own telemetry: it queries Prometheus for the target's metrics over the run, for the report. |
|
Package pack loads product packs (folders of journeys, stresses and targets for one kind of product), detects which pack fits a target, and installs a pack's files into a project.
|
Package pack loads product packs (folders of journeys, stresses and targets for one kind of product), detects which pack fits a target, and installs a pack's files into a project. |
|
Package pki is the server's built-in certificate authority for workers.
|
Package pki is the server's built-in certificate authority for workers. |
|
Package pluginhost finds, starts and talks to protocol plugins: the executables that implement steps such as mqtt.publish.
|
Package pluginhost finds, starts and talks to protocol plugins: the executables that implement steps such as mqtt.publish. |
|
plugintest
Package plugintest builds Stampede's test plugin for other packages' tests.
|
Package plugintest builds Stampede's test plugin for other packages' tests. |
|
plugintest/echo
command
Command echo is a plugin for Stampede's own tests.
|
Command echo is a plugin for Stampede's own tests. |
|
plugintest/runtest
Package runtest runs a scenario file on an in-process engine, for end-to-end tests of plugins and their example scenarios.
|
Package runtest runs a scenario file on an in-process engine, for end-to-end tests of plugins and their example scenarios. |
|
protocol
|
|
|
grpcx
Package grpcx is Stampede's gRPC driver.
|
Package grpcx is Stampede's gRPC driver. |
|
httpx
Package httpx is Stampede's HTTP/1.1 and HTTP/2 driver.
|
Package httpx is Stampede's HTTP/1.1 and HTTP/2 driver. |
|
netem
Package netem emulates slower networks inside the load generator: added round-trip latency with jitter, per-connection bandwidth limits and the effect of packet loss, applied to each virtual user's connections.
|
Package netem emulates slower networks inside the load generator: added round-trip latency with jitter, per-connection bandwidth limits and the effect of packet loss, applied to each virtual user's connections. |
|
sse
Package sse reads server-sent event streams (text/event-stream), as defined by the HTML Living Standard.
|
Package sse reads server-sent event streams (text/event-stream), as defined by the HTML Living Standard. |
|
Package report turns run metrics into a verdict, per-journey and per-step statistics, a timeline and exportable documents.
|
Package report turns run metrics into a verdict, per-journey and per-step statistics, a timeline and exportable documents. |
|
pdf
Package pdf prints a report to PDF with headless Chrome: the same page as the HTML report, in its light theme.
|
Package pdf prints a report to PDF with headless Chrome: the same page as the HTML report, in its light theme. |
|
Package runner runs a scenario in-process (no server or database) and produces a report.
|
Package runner runs a scenario in-process (no server or database) and produces a report. |
|
Package safety keeps Stampede from being pointed at systems the user does not own: target classification, ownership verification, load caps and a per-request host policy.
|
Package safety keeps Stampede from being pointed at systems the user does not own: target classification, ownership verification, load caps and a per-request host policy. |
|
Package scenario defines the Stampede scenario file format: its types, parsing, validation and the templating used inside steps.
|
Package scenario defines the Stampede scenario file format: its types, parsing, validation and the templating used inside steps. |
|
Package script runs a scenario's JavaScript steps with goja.
|
Package script runs a scenario's JavaScript steps with goja. |
|
Package server is the Stampede control plane: the REST API, the run manager, live streams and the embedded web UI.
|
Package server is the Stampede control plane: the REST API, the run manager, live streams and the embedded web UI. |
|
Package store is Stampede's PostgreSQL (and TimescaleDB) persistence: connection pool, embedded migrations and typed queries generated by sqlc from internal/store/queries.
|
Package store is Stampede's PostgreSQL (and TimescaleDB) persistence: connection pool, embedded migrations and typed queries generated by sqlc from internal/store/queries. |
|
storetest
Package storetest starts a disposable TimescaleDB for tests.
|
Package storetest starts a disposable TimescaleDB for tests. |
|
Package telemetry sets up OpenTelemetry tracing for Stampede itself.
|
Package telemetry sets up OpenTelemetry tracing for Stampede itself. |
|
Package tui is Stampede's interactive terminal UI: slash commands, plain language requests turned into commands, and live run views.
|
Package tui is Stampede's interactive terminal UI: slash commands, plain language requests turned into commands, and live run views. |
|
Package version exposes build information stamped in at link time.
|
Package version exposes build information stamped in at link time. |
|
Package wire converts between Stampede's in-memory metrics and the worker protocol messages, and holds the protocol version both sides negotiate.
|
Package wire converts between Stampede's in-memory metrics and the worker protocol messages, and holds the protocol version both sides negotiate. |
|
Package worker runs the load-generating side of a distributed test.
|
Package worker runs the load-generating side of a distributed test. |
Click to show internal directories.
Click to hide internal directories.