Qué es NSAdaTop
nsadatop es el monitor de sesiones Adabas de Nacarsoft: una interfaz de terminal en tiempo real (TUI) inspirada en htop/top. Muestra las sesiones activas de una base Adabas con colores, métricas delta (llamadas/transacciones desde el último refresco, no acumuladas) y navegación interactiva por teclado: ordenar por cualquier columna, filtrar y ajustar el intervalo sin salir de la herramienta. Lee los datos mediante el comando adaopr.
El DBID 50 de los ejemplos es ficticio: use el ID de su base Adabas real.
Casos de uso
1. Monitorización en vivo de la actividad
Ver de un vistazo cuántas sesiones hay, cuáles consumen llamadas y cómo evoluciona la base, con refresco cada 10 segundos:
nsadatop -dbid 50
La cabecera muestra DBID, hora, intervalo y filtros; la barra de estado totaliza sesiones, llamadas y transacciones delta.
2. Cazar cuellos de botella
Localizar la sesión con mayor tasa de llamadas por segundo y ver qué programa Natural ejecuta y cuántos ISNs retiene:
nsadatop -dbid 50 -sort rate -limit 20
Con </> (o ←/→) cambie la columna de orden en vivo (calls, dcalls, dtrans, isns…) y con ↑/↓ inspeccione la fila sospechosa.
3. Ventanas batch y filtrado de ruido
Durante una ventana batch, ocultar las sesiones inactivas y refrescar más rápido para seguir solo el trabajo real:
nsadatop -dbid 50 -int 3 -dcall 5 -limit 15
Con f active/desactive el filtro de llamadas delta, y con +/- ajuste el intervalo sin reiniciar.
Referencia de comandos
Flags (todos los soportados)
| Flag | Descripción | Requerido | Por defecto |
|---|---|---|---|
-dbid | ID de la base Adabas a monitorizar (conexión vía adaopr) | Sí | — |
-int | Intervalo de refresco en segundos (mínimo 1) | No | 10 |
-dcall | Filtro mínimo de llamadas delta: solo sesiones con al menos estas llamadas en el intervalo | No | 0 (todas) |
-limit | Máximo de filas a mostrar | No | todas |
-sort | Columna inicial de orden: rate, user, pid, calls, dcalls, dtrans, isns, time | No | rate |
Valores de -sort: rate (llamadas/segundo), user (usuario de login), pid (ID de entrada Adabas), calls (llamadas acumuladas), dcalls (llamadas delta), dtrans (transacciones delta), isns (ISNs retenidos), time (tiempo desde el logon).
Navegación por teclado
| Tecla | Acción |
|---|---|
↑ / ↓ o k / j | Navegar filas |
< / > o ← / → | Cambiar columna de orden |
+ / - | Aumentar/disminuir el intervalo |
f | Alternar filtro de llamadas delta |
r | Forzar refresco inmediato |
h | Mostrar/ocultar ayuda |
q / ESC | Salir |
PgUp / PgDn | Navegar por páginas |
Home / End | Ir a primera/última sesión |
Columnas de salida
| Columna | Descripción |
|---|---|
| TYPE | Tipo de sesión: TERM (terminal/interactiva) o BATCH (segundo plano) |
| USER | Usuario de login de la sesión Adabas |
| PID | ID de entrada / proceso Adabas |
| USER-ID | Identificador de usuario Adabas |
| ENTRY-ID | Identificador de punto de entrada |
| TIME_ACTIVE | Duración desde el logon |
| CUR_CALLS | Llamadas ADABAS acumuladas |
| dCALLS | Llamadas delta en el intervalo |
| dTRANS | Transacciones delta en el intervalo |
| ISNs | ISNs retenidos por la sesión |
| OPEN | Número de ficheros abiertos |
| TERMINAL | Identificador de terminal (tty, pts) en sesiones de terminal |
| PROGRAM | Programa u objeto Natural en ejecución |
La interfaz muestra además cabecera (banner, DBID, hora, intervalo, filtros, límite), barra de estado (totales de sesiones, llamadas y transacciones delta, orden y filtro activos) y pie con los atajos.
Ejemplos comentados
# 1. Monitorización básica de la base 50 (refresco 10 s)
nsadatop -dbid 50
# 2. Refresco más rápido (5 s) para seguir un pico
nsadatop -dbid 50 -int 5
# 3. Solo sesiones con al menos 10 llamadas delta (quita ruido)
nsadatop -dbid 50 -dcall 10
# 4. Top 20 sesiones ordenadas por llamadas delta
nsadatop -dbid 50 -sort dcalls -limit 20
# 5. Combinado: intervalo 3 s, filtro 5, 15 filas
nsadatop -dbid 50 -int 3 -dcall 5 -limit 15
# 6. Sesiones que más ISNs retienen (posibles bloqueos)
nsadatop -dbid 50 -sort isns -limit 20
Preguntas frecuentes
¿Error porque falta adaopr? Instale/disponibilice las utilidades operativas Adabas en el PATH: nsadatop las usa para leer las sesiones.
¿La pantalla sale sin colores o descuadrada? Use un terminal con soporte de colores y codificación UTF-8, a ser posible a pantalla completa.
¿Qué significa que dCALLS sea 0 en todas las filas? Son deltas del intervalo: 0 indica sesiones inactivas desde el último refresco. Suba -dcall para ocultarlas o pulse f.
¿Cómo cambio el orden sin reiniciar? Con </> o ←/→ dentro del TUI; -sort solo fija el orden inicial.
¿Intervalo mínimo? 1 segundo (-int 1); con +/- lo ajusta en vivo.