|
Resumen ejecutivo
e Introducción
A medida que los datos cargados en los sistemas van creciendo,
resulta importante controlar cuánto espacio en disco ocupan
cada uno de los elementos almacenados en el equipo. Por ejemplo,
¿ necesita saber cuánto ocupan en el almacenamiento
los journals receivers o cuánto consumen los archivos de
spool ?. OS/400 proporciona dos herramientas, RTVDSKINF y PRTDSKINF,
que se utilizan conjuntamente para conocer el espacio consumido
por el sistema operativo y por cada uno de los items almacenados,
entre ellos, las bibliotecas. Su utilización periódica
permite analizar las variaciones en los porcentajes de ocupación
de los discos, detectar cuáles son los items responsables
de los cambios y también analizar objetos que están
en línea, pero no son utilizados desde hace tiempo.
Recolección de información:
uso del comando RTVDSKINF
Si se desea obtener información acerca de cada objeto existente
en el sistema, esta tarea es posible llevarla a cabo utilizando
el comando DSPOBJD OBJ(*ALL/*ALL) OBJTYPE(*ALL) OUTFILE(lib/file).
Sin embargo, a diferencia de DSPOBJD el mandato RTVDSKINF que analizaremos
en esta sección, es realmente una herramienta preparada para
analizar el disco en su totalidad, obteniendo informes sobre bibliotecas,
propietarios e incluso items que componen
el sistema operativo. Esta última capacidad no está
soportada al ejecutar el comando DSPOBJD.
El mandato RTVDSKINF efectúa
una recolección de los datos más relevantes de cada
uno de los objetos que están contenidos en los discos
y genera en la biblioteca QUSRSYS un archivo, objeto *FILE de nombre
QAEZDISK, con atributo PF-DTA y un
miembro con nombre QCURRENT. En este archivo, cada objeto en el
sistema está representado por un registro de información
que contendrá nombre, tipo de objeto, tamaño, propietario,
fecha del último cambio, etc. El comando RTVDSKINF no posee
parámetros para seleccionar qué datos analizar, es
decir, no existe forma de discriminar la información a recolectar.
Su ejecución puede demandar bastante tiempo, y es sólo
válido en entornos batch. Se recomienda su sometimiento
en momentos donde no se realicen operaciones sobre el sistema. A
pesar de ser un mandato que no exige sistema dedicado, es conveniente
que sea la única tarea en ejecución para así
asegurar que cada uno de los objetos presentes haya sido considerado.
El comando RTVDSKINF no puede recolectar información sobre
objetos que están siendo utilizados, ya que el mandato mismo
ejerce bloqueos sobre los objetos.
Es importante considerar que el usuario bajo
el cual se ejecuta el comando RTVDSKINF debe estar incorporado en
el "directorio del sistema". Si el usuario no está
presente en este directorio, el comando RTVDSKINF no se ejecutará
emitiendo la correspondiente joblog. Se puede verificar si el usuario
ya está incorporado o en caso contrario agregarlo, utilizando
el comando WRKDIRE.
El siguiente comando somete la recolección de datos en
forma inmediata:
SBMJOB CMD(RTVDSKINF)
JOB(RECOLECTAR)
Una vez que su ejecución se completó, la tarea siguiente
es seleccionar la información a imprimir.
Impresión de la información
recolectada: comando PRTDSKINF
El mandato PRTDSKINF es el encargado de generar informes con los
datos que fueron previamente reunidos por RTVDSKINF. La siguiente
pantalla muestra el prompt del comando PRTDSKINF:

El primer parámetro del mandato es utilizado para seleccionar
el tipo de reporte a generar. Cuando en el parámetro Tipo
de informe (palabra clave RPTTYPE) se ingresa *LIB, se activa
el parámetro Bibliotecas (palabra
clave LIB) que permite seleccionar nombres de librerías a
incluir en el listado (por omisión, todas):

El mismo comportamiento de habilitar nuevos parámetros
se repite cuando los valores ingresados en Tipo
de reporte son *OWN, *OBJ o *FLR. Los distintos valores y
sus significados están expresados en la siguiente tabla:

Para los cuatro primeros valores de la
tabla existe siempre la posibilidad de especificar valores para
los parámetros Tamaño
mínimo (palabra clave MINSIZE)
y Clasificar por
(palabra clave SORT), afectando la
información que se lista.
El parámetro SORT permite ordenar la información según
el valor seleccionado: *SIZE, *OWNER, *LSTCHG, *LSTUSE y *NAME.
Si el parámetro Tipo de reporte está especificado
en *SYS, se produce un reporte con información sobre el sistema
en general. Esta información general está siempre
incluida en la primera parte de todos los reportes que PRTDSKINF
pueda generar con los otros valores (*LIB, *FLR, *OWN u *OBJ).
El siguiente comando genera un listado
que incluye todas las bibliotecas, ordenadas desde la de mayor a
menor tamaño, sin información sobre objetos específicos
contenidos en ellas.
.
PRTDSKINF RPTTYPE(*LIB)
Una vez que el mandato PRTDSKINF es ejecutado,
genera un archivo de spool de nombre QPEZDISK.
Ejemplos de informes generados con el mandato
PRTDSKINF
En las siguientes secciones se analizarán algunos de los
principales listados que se pueden generar con PRTDSKINF. Existen
otros diseños de listados que se pueden obtener especificando
en el parámetro Tipo de reporte
*OWN, *OBJ y *FLR pero no se ejemplificarán aquí.
Tipo de reporte
*SYS
De acuerdo a lo mencionado en la sección anterior, según
los valores ingresados en el comando PRTDSKINF, se pueden obtener
diferentes informes. El reporte de tipo *SYS se genera siempre,
ya sea que se lo solicite expresamente o dentro de alguna de las
otras opciones disponibles. En las tres imágenes presentadas
a continuación se resaltan algunos datos relevantes de la
información recolectada por el comando RTVDSKINF e impresa
por PRTDSKINF:La siguiente pantalla muestra uno de estos mensajes
de confirmación:



En la Página 1 del informe,
la llamada A especifica la fecha
en la cual se realizó la recolección de información
que está siendo analizada en este reporte. De esta manera,
es posible cotejar si la salida de este informe corresponde a la
última recolección realizada con RTVDSKINF.
En el punto B se detallan datos
de la configuración del equipo sobre el cual se ejecutó
RTVDSKINF (modelo, número de serie, cantidad de memoria y
espacio en disco). También especifica el tipo de reporte
(*SYS).
En el punto C se muestra una
lista de los diferentes componentes del sistema, indicando cada
uno de ellos, qué porcentaje del espacio total de disco utiliza,
y la cantidad de MB que representa. Observar el item Objetos
que no están en una biblioteca que incluye principalmente
objetos que no fueron creados totalmente o que no fueron suprimidos
totalmente y que serán eliminados la próxima vez que
se ejecute el comando RCLSTG.
Otros datos a destacar en la Página
2 del informe incluyen el espacio ocupado por los Archivos
históricos y los Receptores
de diario. Es importante analizar el crecimiento que estos
items pueden experimentar.
En la Página 3, otra información
interesante para analizar está relacionada con los archivos
en spool. El item Spool y Salida
impresora y Spool (QSPL) muestran
el espacio ocupado por archivos de spool y el tamaño de la
biblioteca QSPL respectivamente. La observación de estos
valores pueden indicar la necesidad de ejecutar el comando RCLSPLSTG.
Tipo de reporte *LIB
Cuando en el parámetro Tipo
de reporte se especifica *LIB,
es posible obtener un listado con todas las bibliotecas seleccionadas
y el espacio que ocupa cada una de ellas. Existen facilidades para
seleccionar el ordenamiento de la información. Los valores
defaults incluyen todas las bibliotecas, ordenadas desde la de mayor
tamaño. La siguiente imagen muestra en detalle información
sobre algunas bibliotecas:

Los siguientes son algunos detalles para observar
sobre el tipo de reporte *LIB:
- Analizar el tamaño de las bibliotecas de producción
y cómo evolucionan, efectuando con determinada frecuencia,
diferentes ejecuciones de RTVDSKINF y PRTDSKINF. En estos casos,
también puede ser útil solicitar información
más detallada, cambiando los defaults de los parámetros
Objeto y Tipo de objeto del comando PRTDSKINF.
- Observar también la fecha de última
utilización de cada una de las bibliotecas. Proporciona
una manera sencilla de distinguir cuáles bibliotecas están
en línea, pero no son frecuentemente usadas.
Recordar que se pueden obtener otros diseños de listados
especificando en el parámetro Tipo
de reporte *OWN, *OBJ y *FLR.
Ejemplos de informes generados con QUERY/400
o SQL/400
Como mencionáramos
en secciones anteriores del presente tip, la información
recolectada por el comando RTVDSKINF es almacenada en el archivo
QAEZDISK de la biblioteca QUSRSYS. Más allá de los
informes generados por el comando PRTDSKINF, existe la posibilidad
de generar otros tipos de informes accediendo directamente a este
archivo desde herramientas como SQL o QUERY. La siguiente imagen
muestra el formato de registro del archivo QAEZDISK:

Teniendo en cuenta el formato de registro del
archivo y las facilidades de las herramientas disponibles, es posible
generar otros reportes con información adicional , formato
diferente y secuencias de ordenamiento alternativas. La siguiente
sentencia SQL es un ejemplo de algunas de las posibilidades de acceder
directamente a la información del archivo QAEZDISK:
select sum(DIOBSZ) from QUSRSYS.QAEZDISK
where DIOBOW='TEKNODA' and DIOBTP='PGM' and DIOBAT='CLP'
La ejecución de esta sentencia generará un reporte
de todos los programas CL que son propiedad del perfil de usuario
TEKNODA.
Para tener en cuenta...
- La información almacenada en directorios, representada
a través de objetos de tipo *DIR y *STMF, es considerada
por RTVDSKINF en cuanto al espacio que ocupa en el disco, pero
sin poder distinguir su nombre y su ubicación dentro del
árbol de directorios. Sin embargo, el comando PRTDSKINF
no tiene facilidades para generar reportes donde se detalle cada
uno de los objetos que están almacenados en los directorios
y subdirectorios existentes. Es decir, el parámetro
Tipo de reporte del mandato PRTDSKINF no posee la opción
*DIR.
- La autorización pública por default del mandato
RTVDSKINF es *EXCLUDE. Por lo tanto, el usuario que somete este
comando debe poseer las autorizaciones necesarias.
- La incorporación de usuarios en el directorio del sistema
también puede realizarse desde Operations
Navigator (su nuevo nombre es iSeries Navigator) a través
del item Usuarios y grupos.
- La ejecución del comando PRTDSKINF debe siempre estar
precedida por la del mandato RTVDSKINF. Si esta observación
no es tenida en cuenta, se estarán generando reportes sobre
datos que no son "frescos".
- Si se trata de cuidar el espacio en disco, una vez que se hayan
obtenido los informes necesarios a través de PRTDSKINF,
el miembro QCURRENT puede ser eliminado.
- Desde el Operational Assistant, la opción
1 del menú DISKTASKS (Recoger información
de espacio en disco) permite planificar la ejecución de
RTVDSKINF, seleccionando frecuencias diarias, semanales o mensuales.
Esta operación genera nuevas entradas planificadas que
se verán en el comando WRKJOBSCDE. La opción 2 (Imprimir
información de espacio en disco) presenta una interfaz
más amigable del mandato PRTDSKINF y además informa
la fecha y hora de la recolección sobre la que trabajará.
|