There is a way to run your own code inside the Linux kernel — attached to a syscall, a network packet, a function entry — without writing a kernel module and without rebooting. That sounds like it should be impossible or insane, and it's neither. It's eBPF, and it's quietly become the foundation under nearly every observability, networking, and security tool you already use.
A microservice fails loudly — a 500, a stack trace, a pager going off. An LLM app fails politely: the answer just got worse, the cost quietly tripled, or the agent looped fourteen times before answering, and nothing errored. This is how you point OpenTelemetry at that problem, so 'the model felt off' turns into 'the third tool call took six seconds and triggered two extra model round-trips.'
A slow request crosses five microservices and you have five log streams that don't talk to each other. This is how OpenTelemetry traces turn 'somewhere it's slow' into 'the inventory service's DB call took 1.74s on this exact request' — including context propagation, sampling, and the gotchas that split your trace in two.
Treating LLM calls as just another upstream dependency. How to use Spring AI to build a multi-provider gateway with retries, circuit breakers, prompt versioning, and observability — the same hygiene you'd put around any external API.