SLShakyLineGitHub
reference

Control API

ShakyLine is controlled through a small HTTP API exposed on the configured control port.

Endpoints

GET/health

Check whether the control server is alive.

GET/sessions

List active proxy session ids and the current count.

GET/metrics

Read Prometheus-compatible counters and gauges.

POST/profiles/{name}

Create or update a named fault profile.

DELETE/profiles/{name}

Remove a named profile and return traffic to baseline.

Create a profile

Profiles are named. You can use names such as default, upload, checkout, or realtime to model different traffic scenarios.

post profile
curl -X POST http://localhost:9090/profiles/checkout \
  -H "Content-Type: application/json" \
  -d '{"c2s_latency_ms":250,"c2s_drop_rate":0.04}'

Inspect and reset

Use sessions and metrics while a test is running, then delete the profile when the scenario is complete.

observe
curl http://localhost:9090/health
curl http://localhost:9090/sessions
curl http://localhost:9090/metrics
curl -X DELETE http://localhost:9090/profiles/checkout