5 Formas de Realizar Depuración en Asterisk 20

1. Consola CLI con Verbosity

La forma más básica y común es aumentar el nivel de verbosidad directamente desde la consola CLI:

asterisk -rvvvvv

O una vez dentro de la CLI:

*CLI> core set verbose 5
*CLI> core set debug 5

Cada "v" adicional incrementa el nivel de detalle. Esto es útil para ver el flujo de llamadas en tiempo real, problemas de registro SIP, y ejecución del dialplan.

2. Debug SIP Específico

Para depurar problemas relacionados con PJSIP (que es lo que usas en Asterisk 20):

*CLI> pjsip set logger on
*CLI> pjsip set logger verbose on

Esto muestra todos los mensajes SIP completos (INVITE, REGISTER, BYE, etc.) con headers y SDP. Es fundamental para diagnosticar problemas de señalización, NAT, y codec negotiation.

Para depurar un endpoint específico:

*CLI> pjsip set logger host 192.168.1.100

3. Logging en Archivos con logger.conf

Configura logging personalizado en /etc/asterisk/logger.conf para capturar diferentes niveles de información en archivos separados:

[logfiles]
console => notice,warning,error,debug
messages => notice,warning,error
full => notice,warning,error,debug,verbose,dtmf
debug => debug
pjsip_history => notice,warning,error,debug,verbose

Luego recargas:

*CLI> logger reload
*CLI> logger rotate

Los logs quedan en /var/log/asterisk/. Esta técnica es excelente para análisis post-mortem y depuración de problemas intermitentes.

4. PJSIP History

Asterisk 20 con PJSIP incluye un historial interno muy potente:

*CLI> pjsip show history
*CLI> pjsip show history entry <id>

Guarda automáticamente las últimas transacciones SIP en memoria, permitiendo revisar llamadas recientes sin necesidad de capturar paquetes. Puedes configurar el tamaño del buffer en pjsip.conf:

[system]
pjsip_history_size=1000

5. Captura de Paquetes con tcpdump/sngrep

Para depuración a nivel de red, especialmente problemas de RTP o signaling complejo:

Con tcpdump:

tcpdump -i any -n -s 0 -w /tmp/asterisk-$(date +%Y%m%d-%H%M%S).pcap port 5060 or portrange 10000-20000

Con sngrep (mucho más amigable):

sngrep port 5060

sngrep es particularmente útil porque te muestra los flujos de llamadas visualmente, permitiendo ver la secuencia completa de mensajes SIP y detectar rápidamente dónde falla una transacción. Puedes filtrar por IP, método SIP, o Call-ID.


Consejo Práctico

Para depuración completa de un problema específico, combina varios métodos. Por ejemplo:

  • pjsip set logger on
  • core set verbose 5
  • sngrep corriendo en paralelo

Esto te da visibilidad completa del signaling, dialplan execution, y transporte de paquetes.

Comandos Útiles Adicionales

# Ver configuración de PJSIP
pjsip show endpoints
pjsip show aors
pjsip show auths

# Ver llamadas activas
core show channels
pjsip show channels

# Ver registro de dispositivos
pjsip show registrations

# Reiniciar logging
logger reload
logger rotate

Niveles de Debug/Verbose

  • 0-2: Información mínima, solo errores críticos
  • 3-4: Información estándar de operación
  • 5-7: Debug detallado, recomendado para troubleshooting
  • 8-10: Debug extremo, puede generar MUCHA información

 

Vota el Articulo: 

Sin votos (todavía)
Evalúa la calidad del articulo
Suscribirse a Comentarios de "5 Formas de Realizar Depuración en Asterisk 20" Suscribirse a VozToVoice - Todos los comentarios