Home > HP-UX > HP-UX 11.31: gestión de cores con coreadm

HP-UX 11.31: gestión de cores con coreadm

Hoy os traigo una nueva funcionalidad para la última versión de HP-UX para manejar los cores que puedan generar los procesos. Los usuarios de Solaris y otros unix les resultará familiar pero no ha sido hasta la versión 11.31 cuando se ha incorporado a HP-UX.

Hasta ahora, si se generaba un core, se generaba y guardaba en la ruta la cual el fichero estuviera ubicado. Ahora, podremos gestionar todos los cores que se generen en la máquina de una manera global y centralizada indicando que se guarden todos en un directorio determinado con un formato concreto en vez que todos se llamen core, esta gestión la estableceremos con el comando coreadm.

Tenemos una lista de parámetros para personalizar el nombre que le vamos a dar a los cores que se generen y la siguiente:

         %p   process ID
         %xp  Process ID in hex
         %u   effective user-ID
         %xu  effective user-ID in Hex
         %g   effective group-ID
         %xg  effective group-ID in Hex
         %c   thread's CPU number when the core file was created
         %f   executable file name, up to a maximum of MAXCOMMLEN characters
         %n   system node name (uname -n)
         %t   time-stamp (in UTC time format)
         %%   literal %

Como podemos ver, es bastante personalizable, pero mejor veamos un ejemplo práctico.

Vamos a indicar al sistema que deje todos los cores bajo /var/adm/crash/cores/ pero con un determinado formato que nos indique el usuario, PID y nombre de proceso que lo generó de la siguiente manera:

(root):/root> coreadm -e global -g /var/adm/crash/cores/core.%f.%u.%p

Lanzamos un proceso dejándolo en segundo plano y le forzamos para que genere un core mediante la señal 3 de kill

(root):/root> sleep 100&
[1]     1167
(root):/root> kill -3 %1
(root):/root> jobs
[1] + Quit(coredump)           sleep 100&

Y ahora vamos al directorio donde hemos indicado que nos deje los cores para ver si ha funcionado:

(root):/root> ls -la /var/adm/crash/cores
total 1872
drwxr-xr-x   2 root       sys             96 Apr 21 17:41 .
drwxr-xr-x   4 root       root            96 Apr 21 17:35 ..
-rw-------   1 root       root        284848 Apr 21 17:41 core.sleep.0.1167

Ahora teniendo todos los cores bajo un mismo directorio será mucho más facil tenerlos controlados, hacer algún mini-script para que nos avise una vez se genere algún core etc…

Categories: HP-UX Tags: ,