Use Network Link Conditioner, Android emulator tools, and proxies like Toxiproxy to inject latency, jitter, drops, and reorderings. Test captive portals, expired TLS, and clock skew. Automate scenarios in CI, and gate releases on resilience thresholds that mirror the ugliest conditions your real travelers endure daily.
Emit structured events with stable IDs and error codes, but avoid raw payloads and secrets. Sample generously during betas, conservatively in production. Respect regional data residency and user consent. Build redaction, rotation, and deletion into pipelines so debugging thrives without compromising people’s privacy or regulatory obligations.