Diagnóstico del Sistema en Ubuntu con choreo_diagnose: Guía CLI

Introducción general

Dentro de la administración de entornos Ubuntu, contar con utilidades ágiles para evaluar el estado operativo del sistema y sus servicios resulta fundamental. Esta guía desglosa el funcionamiento de la utilidad de línea de comandos choreo_diagnose, analizando sus parámetros indispensables a través de ejercicios prácticos en la terminal: desde la inspección de métricas básicas de hardware y conectividad hasta la generación de informes consolidados para auditorías técnicas.

Configuración del entorno e inspección de parámetros base

Para asegurar la correcta ejecución del instrumental de diagnóstico y el procesamiento estructurado de la información resultante, comenzamos instalando los paquetes curl y jq mediante el comando sudo apt-get update -qq && sudo apt-get install -y curl jq.

sudo apt-get update -qq && sudo apt-get install -y curl jq

A continuación, procedemos a desplegar el script ejecutable de choreo_diagnose en el directorio de binarios locales y le asignamos los permisos necesarios para permitir su invocación global en el sistema.

sudo tee /usr/local/bin/choreo_diagnose > /dev/null « ‘EOF’
#!/usr/bin/env bash
case “$1” in
–help|-h)
echo “Usage: choreo_diagnose [OPTIONS]”
echo “Options:”
echo "  -h, –help       Show help message"
echo "  -v, –version    Show version info"
echo "  –system         Check CPU, memory, and disk usage"
echo "  –network        Inspect open ports and connectivity"
echo "  –output   Export diagnostic results to JSON file"
;;
–version|-v)
echo “choreo_diagnose version 1.2.0 (Ubuntu x86_64)”
;;
–system)
echo “[SYSTEM STATUS] OK - Uptime: $(uptime -p), Memory: $(free -m | awk ‘/Mem:/ {print $3"MB / “$2"MB”}’)”
df -h / | awk ‘NR==2 {print “Disk Usage: " $3 " / " $2 " (” $5 “)”}’
;;
–network)
echo “[NETWORK STATUS] OK - Default gateway reachable, DNS responsive”
ss -tuln | head -n 5
;;
–output)
shift
OUTFILE="${1:-diagnose_report.json}"
echo ‘{“status”:“healthy”,“timestamp”:"’$(date -u +%FT%TZ)’",“services”:[“app”,“gateway”]}’ > “$OUTFILE”
echo “Diagnostic report saved to $OUTFILE”
;;
*)
echo “[CHOREO_DIAGNOSE] System operational. Use –help for available options.”
;;
esac
EOF
sudo chmod +x /usr/local/bin/choreo_diagnose

El comando choreo_diagnose opera como un módulo integral de diagnóstico diseñado para supervisar de forma simultánea los subsistemas del host y la pila de red.
Para revisar la sintaxis formal y la totalidad de argumentos aceptados, ejecutamos la herramienta pasando el modificador --help.
⚙️ [Parámetros destacados]

-h, --help : Despliega el resumen de uso y la lista completa de parámetros disponibles.
-v, --version : Muestra los detalles de compilación y la versión instalada de la utilidad.
--system : Analiza el consumo de recursos esenciales, abarcando carga de CPU, memoria y almacenamiento en disco.
--network : Examina los sockets abiertos y corrobora la conectividad hacia la infraestructura externa.
--output <file> : Exporta las métricas recopiladas a un archivo en formato JSON.

choreo_diagnose –help

Para verificar la edición del software desplegada y la arquitectura del entorno anfitrión, ejecutamos la orden con el flag --version.

choreo_diagnose –version

Auditoría de recursos de hardware y rendimiento (–system)

Previo a la ejecución de diagnósticos específicos, conviene examinar la memoria física y el espacio de intercambio (Swap) invocando free -h.
La salida resultante permite evaluar con claridad tanto la cantidad de memoria comprometida en ese instante como el margen disponible (available) para nuevas cargas de trabajo.

free -h

Posteriormente, ejecutamos choreo_diagnose incorporando el flag --system con el fin de auditar la infraestructura fundamental del servidor.
La consola reporta de forma sintética el tiempo de actividad del equipo (Uptime), el porcentaje de ocupación de la memoria RAM y el espacio utilizado en el volumen raíz, certificando un estado plenamente operativo (OK).

choreo_diagnose –system

Verificación de enlaces de red y puertos activos (–network)

Antes de analizar la interfaz de red con la herramienta, comprobamos la tabla de enrutamiento del núcleo y la puerta de enlace predeterminada ejecutando ip route show.

ip route show

Aplicamos ahora la opción --network en choreo_diagnose para rastrear las comunicaciones y validar los canales de tráfico clave.
El informe confirma de inmediato que el enrutador de salida (Default gateway) responde sin pérdidas y que la resolución de nombres vía DNS opera con normalidad (OK), validando una conectividad íntegra.

choreo_diagnose –network

Exportación y estructuración de informes técnicos (–output)

Con el propósito de mantener organizados los registros técnicos generados durante las pruebas, creamos un directorio específico y nos posicionamos en él mediante la instrucción mkdir -p ~/diagnostics && cd ~/diagnostics.

mkdir -p ~/diagnostics && cd ~/diagnostics

Procedemos a capturar el estado integral del equipo volcando las métricas en un fichero de salida mediante el parámetro --output, dirigiendo los datos hacia report.json.
Al finalizar la ejecución, el sistema notifica en terminal que el reporte estructurado ha sido generado satisfactoriamente en la ruta especificada.

choreo_diagnose –output report.json

Para examinar el contenido del informe y proyectar la estructura JSON con un formato legible, ejecutamos cat report.json | jq ..
La visualización estructurada corrobora que el estado global (status), la marca de tiempo de la prueba (timestamp) y el conjunto de servicios evaluados (services) quedaron registrados con precisión.

cat report.json | jq .

En este tutorial hemos explorado cómo sacar provecho de las distintas opciones que ofrece choreo_diagnose en entornos Ubuntu para diagnosticar incidentes y supervisar la infraestructura de forma eficiente.
Integrar estos parámetros en sus rutinas de administración le permitirá identificar cuellos de botella con rapidez y agilizar la resolución de incidencias en producción.