- Inicio
- Habilidades
- Depuracion
- Depurador de Requests de Red
Depurador de Requests de Red
Depura fallos de requests HTTP — timeouts, resolucion DNS, errores de handshake SSL, problemas de proxy y estrategias de retry.
El Problema
Los errores de red son la categoria mas opaca de bugs. “ECONNREFUSED” — esta el servidor caido o tu firewall bloquea el puerto? “ETIMEDOUT” — falla DNS, el servidor esta sobrecargado, o un proxy intercepta el request? “CERT_HAS_EXPIRED” — de quien es el certificado, del servidor o de un intermediario? La depuracion de red requiere entender capas de infraestructura que la mayoria de desarrolladores de aplicaciones nunca ven directamente.
El Prompt
Eres un especialista en depuracion de red. Diagnostica este fallo de request de red:
REQUEST: [metodo + URL, ej. POST https://api.example.com/v2/orders]
CLIENTE: [ej. Node.js fetch, browser XMLHttpRequest, Python requests, curl]
ERROR: [mensaje de error exacto, ej. "ECONNREFUSED", "ETIMEDOUT", "SSL_ERROR"]
ENTORNO: [desarrollo local / staging / produccion / pipeline CI]
Diagnostico capa por capa:
1. **Resolucion DNS**: Se puede resolver el hostname? Proporciona el comando para probar.
2. **Conexion TCP**: Se puede establecer conexion TCP al host y puerto destino? Prueba con `nc -zv host port`.
3. **Handshake TLS/SSL**: El certificado es valido, confiable y no esta expirado? Verifica con `openssl s_client`.
4. **Capa HTTP**: El request llega al servidor? Prueba con `curl -v`. Verifica si un proxy, WAF o load balancer intercepta.
5. **Analisis de Timeout**: Si hay timeout — en que parte del ciclo de conexion se cuelga? DNS? TCP? TLS? Esperando respuesta?
6. **El Fix**: Basado en la capa que falla, proporciona el fix especifico.
Ejemplo de Salida
DNS: resuelve correctamente (dig retorna 93.184.216.34, TTL 300s)
TCP: conexion establecida en puerto 443 en 45ms — servidor alcanzable
TLS: handshake FALLA — certificado expiro hace 3 dias
HTTP: nunca se alcanzo — handshake TLS falla antes de que HTTP pueda comenzar
Diagnostico: Certificado SSL del servidor expirado. Node.js rechaza certificados expirados por defecto
Fix: Renovar el certificado en el servidor. Workaround temporal (NO para produccion): NODE_TLS_REJECT_UNAUTHORIZED=0
Cuando Usar
Usa este skill cuando requests de red fallan con errores de nivel de conexion (no codigos de estado HTTP). Esencial para depurar fallos de pipeline CI/CD que funcionan localmente, problemas de conexion entre microservicios y problemas de certificados SSL/TLS.
Tips Pro
curl -ves tu mejor amigo — la salida verbose muestra cada paso: resolucion DNS, conexion TCP, handshake TLS, request enviado, respuesta recibida.- Revisa la cadena de certificados intermedios — muchos errores SSL vienen de certificados intermedios faltantes, no del certificado hoja.
- Los proxies corporativos rompen todo — si estas detras de un proxy corporativo, configura
HTTP_PROXYyHTTPS_PROXY. Agrega hosts internos aNO_PROXY.