network-tracing
Skill116 starsChanged 11 months agoMITView on GitHub
Instrument API requests with spans and distributed tracing. Use when tracking request latency, correlating client-backend traces, or debugging API issues.
In this repository8 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- crash-instrumentationSkill
- instrumentation-planningSkill
- interaction-latencySkill
- navigation-latencySkill
- session-replaySkill
- symbolication-setupSkill
- user-journey-trackingSkill
The file
Files
Network Tracing
Measure API requests and correlate with backend traces.
What to Capture (OTel-Compatible Names)
| Attribute | OTel Name | Purpose |
| Method | http.request.method | GET, POST, etc. |
| Status | http.response.status_code | Success/failure |
| URL | url.path | Endpoint (sanitized) |
| Duration | http.request.duration | Request time (ms) |
| Size | http.response.body.size | Payload bytes |
Using OTel naming = easier migration when OTel mobile matures.
See references/otel-mobile.md for rationale.
Distributed Tracing
Propagate trace context to backend:
Client Request
│
├── traceparent: 00-{trace_id}-{span_id}-01
├── X-Request-Id: {uuid}
└── X-Session-Id: {session}
│
▼
Backend (correlates logs with trace_id)Key Thresholds
| Metric | Good | Acceptable | Poor |
| API p50 | <500ms | <1s | >1s |
| API p95 | <2s | <5s | >5s |
| Error rate | <1% | <3% | >3% |
Integration Options
Choose based on existing vendor:
| Vendor | iOS | Android | Approach |
| Sentry | Auto URLSession swizzling | OkHttp integration | Automatic |
| Datadog | URLSession delegate | OkHttp interceptor | Semi-auto |
| Embrace | Auto-instrumentation | Auto-instrumentation | Automatic |
| New Relic | Auto URLSession instrumentation | Auto OkHttp/HttpURLConnection | Automatic |
| Custom | Manual interceptor | Manual interceptor | Manual |
Automatic (swizzling): Less code, may miss custom clients Manual (interceptors): More control, works with any HTTP client
Platform Integration Points
| Platform | Manual Option | Works With |
| iOS | URLSession delegate | All URLSession-based clients |
| iOS | Alamofire EventMonitor | Alamofire |
| Android | OkHttp Interceptor | OkHttp, Retrofit |
| Android | Ktor HttpClientPlugin | Ktor |
| RN | fetch wrapper | Native fetch |
| RN | axios interceptor | axios |
Implementation
See references/mobile-challenges.md (Client-Backend Correlation) for:
- W3C trace header format
- Platform-specific interceptor code
- Backend log correlation patterns
See references/performance.md (Network section) for latency budgets.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

