Administración SAS: Detección sesiones pesadas

Este procedimiento sirve a aquellos administradores de un sistema SAS a determinar que sesión y que usuario pueden llegar a estar dando problemas al resto en un momento dado por estar consumiendo demasiado espacio en disco en el servidor.

Para poder ejecutarlo es necesario tener un usuario en el sistema operativo de la máquina SAS con permisos sudo. Este procedimiento está, por tanto, dirigido a máquinas Linux y se lo debo a mi compañero y amigo Christian.

Tras logarnos nos adjudicamos permisos sudo: sudo su -

sesiones1

Nos dirigimos a la ruta donde está la work, típicamente /opt/sas/saswork/. En esta carpeta se encuentran almacenadas las carpetas Linux que contienen todos los datos almacenados en todas las work de todas las sesiones SAS abiertas en ese momento por todos los usuarios en esa máquina. Listamos los nombres de esas work y determinamos cuales pueden ser más grandes y dar problemas, por ejemplo hacemos un grep para coger aquellas sesiones que están expresadas en Gb: du -sh * | grep G

sesiones2

Podemos ver que efectivamente las work están almacenadas en esa ruta de nuestro servidor si desde Enterprise Guide sacamos las propiedades de nuestra work con el botón derecho. La ruta que nos indica es exactamente esa.

sesiones3

Finalmente para identificar al usuario ‘infractor’ hacemos un grep del log de su sesión buscando su CLIENTMACINE, que no es más que su identificador de usuario. Se puede hacer también un grep a CLIENTUSERID que contiene el nombre del usuario:

grep CLIENTUSERID SASApp_WorkspaceServer_2018-11-07_sas_5889.log

En el caso de que estuviéramos buscando una sesión que se haya quedado colgada la tarea de identificarla es siempre muy fácil si los usuarios ejecutan un %put &sysjobid; porque reflejará el PID de esa tarea en el log y sabremos que tarea matar. Lo realmente idóneo es incluir esta instrucción en el autoexec.sas.

Configuración SAS Guide para usuarios

Como usuarios hay varias configuraciones de nuestro cliente SAS Guide que puedo recomendaros hacer. La configuración de SAS Guide se realiza desde el menú: «Herramientas > Opciones…»

  • General > Mostrar la ventana de bienvenida al inicio:
  • Permite recuperar la ventana de bienvenida en el caso de que la hubieras quitado.

    Pantalla_bienvenida

  • General > Configuración de idioma de SAS Enterprise Guide:
  • Aquí es donde podemos cambiar el idioma de SAS Guide.

    Configuracion_idioma

  • Resultados > General > Formatos:
  • Creo que esto no es muy conocido pero es muy útil cuando hacemos análisis univariante, por ejemplo. Si necesitamos guardar todos esos informes en determinado formato podemos definirlo aquí. Podemos seleccionar tantos como queramos y en el layout del proyecto se generarán tantos nodos con tantos formatos como indiquemos. En predeterminado indicaremos aquel que se abrirá por defecto entre todos los anteriores. Tenemos opción de marcar informes tipo SAS, PDF, HTML, Excel, PowerPoint, ficheros planos…

    Configuracion_formatos

  • Programas SAS > botón «Opciones del editor»
  • Para una mejor visualización y compatibilidad a la hora de exportar código recomiendo marcar las siguientes opciones:

    configuracion_editor

  • Comparación de archivos:
  • Finalmente, aquí podemos definir el comparador de archivos por defecto que queremos usar: WinMerge o Notepad++, por ejemplo.

  • Cerrar tablas abiertas por SAS Guide
  • Añado una opción importante más, que puede ayudarte a evitar problemas cuando una tabla que se haya generado ya anteriormente con Guide siga abierta y genere un error al volver a ejecutar. La opción se encuentra en Herramientas > Opciones > Programas SAS. Dentro de esta pantalla asegúrate de tener seleccionada la opción «Cerrar todos los datos abiertos antes de ejecutar código».