Add tracing capabilities which implement the otel protocol. We can start with auto-instrumentation to generate traces and spans for all network requests, and add custom instrumentation later to generate more in-depth spans for function calls if desired.
The OpenTelemetry Rust library can be used for this.