It’s been a while since I’ve actually written a java application. When testing circuit breaking with Istio, I had to dust off a bit of that knowledge to create a small application that helps me testing. Basically it’s a small Quarkus app that exposes 3 REST endpoints:

  • /headers -> it prints all request headers. This was useful since I came across a scenario where a header was allegedly “lost” by the istio-proxy (which was not the case)
  • /sleep/{seconds} - The app just waits the amount of seconds until it responds. That’s great for testing timeout scenarios.
  • /status/{http_status_code} - returns the status code you request. Such a great feature which I frequently use provided by the httpbin application. I just added this endpoint because I am lazy and don’t want to deploy multiple apps if I can avoid it.

The app is available on Quay: https://quay.io/repository/jaeichle/api-endpoint, the kinda newbie source code is on https://github.com/jeichler/tester-api-endpoint.