The first challenge of the Application Observability Code Challenges is now available.
See the announcement blog for more information about the challenges in general.
The goal is to have fun and learn in the first place.
π The Challenge
- Run the sample application
- Run the tests to see what happens
- Try to find out what happens, make a hypothesisβ
- Improve the observability of the application to prove the hypothesis
- Optional: fix the problem and prove it with observability data that it is really fixed
- Optional, but highly appreciated π: Share your findings, insights you learned and potential solution, either as a ‘discussion’ or as a pull request
π οΈ How to Get Started
All the details you need to jump in can be found here:
π https://github.com/cbos/application-observability-code-challenges/tree/main/challenge-01
Prefer an online environment? No problem! Use KillerCode to get started with just a few clicks:
π https://killercoda.com/observability-code-challenges
Challenge details
- The sample application is a simple Spring Boot application with a REST endpoint implemented in Jersey/JAX-RS.
- The application is instrumented using OpenTelemetry auto instrumentation.
- You can either run the application with Docker or directly.
- Pre-configured K6 load scripts to simulate traffic and reveal performance bottlenecks.
- You can use the pre-configured Observability Toolkit or you can use your own Observability stack
The setup looks like this:
After running one of the scripts you can get more details in a Grafana dashboard like this:
In this screenshot you can see that the application is reaching a limit for some reason, more load does not give more requests per second and with more load the response times increase a lot. Are you able to improve the observability, find the cause and maybe even fix it?
π Go to the challenge: https://github.com/cbos/application-observability-code-challenges/tree/main/challenge-01
Feedback?
If you have any feedback, please let me know. You can leave a comment below, send me a message on Bluesky, Mastodon, LinkedIn or in the ‘discussion’ section of the challenge’s Github repository .