Scenarios
Availability
always-up
Always returns 200 OK
https://origin.crashloop.ing/scenarios/always-up
- method
- GET
- expected_status
- 200-399
- interval_seconds
- 60
always-down
Always returns 500 (permanent incident)
https://origin.crashloop.ing/scenarios/always-down
- method
- GET
- expected_status
- 200-399
- interval_seconds
- 60
- notes
- Expect incident to stay open
hourly-outage
UP · 54m 14s outage in
500 for 2 minutes at the top of every hour (UTC), else 200
https://origin.crashloop.ing/scenarios/hourly-outage
- method
- GET
- expected_status
- 200-399
- interval_seconds
- 30
- notes
- Expect incident near :00, recover by ~:03 with default thresholds
outage-15m
UP · 9m 14s outage in
500 for 90 seconds every 15 minutes (UTC), else 200
https://origin.crashloop.ing/scenarios/outage-15m
- method
- GET
- expected_status
- 200-399
- interval_seconds
- 30
- notes
- Faster open/recover loop than hourly-outage
flaky-20
200 by default, ~20% chance of 500
https://origin.crashloop.ing/scenarios/flaky-20
- method
- GET
- expected_status
- 200-399
- interval_seconds
- 30
- notes
- Mostly blips at failure_threshold 4
Responses
wrong-body
200 with body WRONG; fails body assertion expecting OK
https://origin.crashloop.ing/scenarios/wrong-body
- method
- GET
- expected_status
- 200-399
- body_contains
- OK
- interval_seconds
- 60
expect-ok
200 with body OK; pair with wrong-body checks
https://origin.crashloop.ing/scenarios/expect-ok
- method
- GET
- expected_status
- 200-399
- body_contains
- OK
- interval_seconds
- 60
only-204
204 No Content with empty body
https://origin.crashloop.ing/scenarios/only-204
- method
- GET
- expected_status
- 204-204
- interval_seconds
- 60
timeout
Delays 11s before 200 (past chk's ~10s probe timeout)
https://origin.crashloop.ing/scenarios/timeout
- method
- GET
- expected_status
- 200-399
- interval_seconds
- 300
- notes
- Use 5m interval; expensive on workers
Redirects
redirect-once
302 to /scenarios/always-up
https://origin.crashloop.ing/scenarios/redirect-once
- method
- GET
- expected_status
- 200-399
- follow_redirects
- true
- notes
- Also create a nofollow check expecting failure or 302
redirect-chain
Starts a 5-hop redirect chain ending at /redirect/0 with 200 OK
https://origin.crashloop.ing/scenarios/redirect-chain
- method
- GET
- expected_status
- 200-399
- follow_redirects
- true
- interval_seconds
- 60
Request methods
POST body
POST only; echoes request body as 200, other methods 405
https://origin.crashloop.ing/scenarios/echo-post
- method
- POST
- expected_status
- 200-399
- interval_seconds
- 60
- notes
- Send a small request body and assert it is returned
PUT body
PUT only; echoes request body as 200, other methods 405
https://origin.crashloop.ing/scenarios/echo-put
- method
- PUT
- expected_status
- 200-399
- interval_seconds
- 60
- notes
- Send a small request body and assert it is returned
PATCH body
PATCH only; echoes request body as 200, other methods 405
https://origin.crashloop.ing/scenarios/echo-patch
- method
- PATCH
- expected_status
- 200-399
- interval_seconds
- 60
- notes
- Send a small request body and assert it is returned
DELETE body
DELETE only; echoes request body as 200, other methods 405
https://origin.crashloop.ing/scenarios/echo-delete
- method
- DELETE
- expected_status
- 200-399
- interval_seconds
- 60
- notes
- Send a small request body and assert it is returned
OPTIONS body
OPTIONS only; echoes request body as 200, other methods 405
https://origin.crashloop.ing/scenarios/echo-options
- method
- OPTIONS
- expected_status
- 200-399
- interval_seconds
- 60
- notes
- Send a small request body and assert it is returned
Request header
Returns the X-Crash-Loop-Test request header as 200
https://origin.crashloop.ing/scenarios/echo-header
- method
- GET
- expected_status
- 200-399
- interval_seconds
- 60
- notes
- Set X-Crash-Loop-Test and assert its value is returned