Tr

Toxiproxy resilience testing proxy on Ubuntu 24.04 LTS

Azure Developer Tools

Toxiproxy, a TCP proxy for deterministic resilience testing: inject latency, timeouts and connection drops between an app and its dependencies.

Base
Hardened build
minimal ports, security patches applied at build time
Access
Unique credentials
generated on first boot, readable only by root
Verified
Boots working
services pass a health gate before release
Support
24/7, 365 days
by email and live chat, 24 hour response SLA

Overview

Toxiproxy is a TCP proxy for deterministic resilience and chaos testing. It sits between an application and its upstream dependencies (databases, caches, queues, APIs) and injects controllable failures called toxics: latency, bandwidth limits, timeouts, connection resets and data slicing. Because the failures are deterministic and scriptable, teams can reproduce a slow database or a flaky network in a test suite or a staging environment on demand, instead of waiting for it to happen in production.

It is driven entirely through an HTTP control API and a companion command line client, so failure scenarios can be scripted into automated tests or triggered by hand while debugging.

Why the cloudimg image

cloudimg delivers Toxiproxy fully installed and running under systemd, so a working proxy is available within minutes of launch. It ships a self contained demo out of the box: a bundled loopback upstream, a demo proxy that forwards a public port to it, and a sample latency toxic already applied, so listing the proxies and curling through the demo port shows a real, failure injecting proxy on first boot. The control API is unauthenticated by design and can reach arbitrary destinations, so this image binds it to the loopback interface only and never exposes it to the network. The operating system ships fully patched with unattended security updates enabled, and every image includes 24/7 cloudimg support and a step by step deploy guide tested against the exact image you launch.

Common uses

  • Reproduce a slow or failing dependency on demand by injecting latency, timeouts or connection drops into a test suite
  • Prove an application degrades gracefully under bandwidth limits, resets and partial reads before it ships
  • Debug flaky integrations by scripting deterministic network faults between a service and its upstreams