# Using Artillery
Kargo provides an Artillery (opens new window) docker image that can be used to perform load testing of your platform.
# Running Artillery
$docker run -e -ti kalisio/artillery:1.6.0 bash
You can also run Artillery from the manage node if you need to bench some services that are not exposed.
$docker run --network=kargo -v /home/ubuntu/kargo/workspaces/my_workspace/benchmark:/benchmark -e -ti kalisio/artillery:1.6.0 bash
# Example: benchmarking the API
Kargo comes with some files that allow you to perform a load test of the API.
To run the tests, you must define the following environment variables:
SUBDOMAIN: the Kargo subdomain like
API_GATEWAY_JWT: the JWT access token for the API gateway
The benchmark is available in two different environments:
public: when Kargo does not use any API gateway and exposes all web mapping services publicly
api: when Kargo exposes all web mapping services behind the Express-Gateway (opens new window) API gateway
Select the right environment then run the command:
$artillery run -e api --config ./config.yml ./scenarios.yml`
To debug, set the
DEBUG=http* environment variable.