Esta acción requiere privilegios elevados.
Código de elevación: proc cas; accessControl.assumeRole / adminRole="superuser"; run;
La acción 'log' en CAS Viya es una herramienta administrativa fundamental que permite a los usuarios, especialmente a los administradores, visualizar y modificar dinámicamente los niveles de registro (logging) de diferentes componentes del servidor CAS. Gestionar los niveles de registro es crucial para la depuración de problemas (aumentando el nivel a DEBUG o TRACE para obtener más detalles) o para optimizar el rendimiento en producción (reduciendo el nivel a WARN o ERROR para minimizar la sobrecarga de E/S). Esta acción puede aplicarse a la sesión actual, a todas las nuevas sesiones futuras o incluso al controlador principal del servidor, lo que requiere privilegios de administrador para cambios a nivel de todo el sistema.
| Parámetro | Descripción |
|---|---|
| level | Especifica el nivel de registro a establecer. Si se omite, la acción simplemente lista los registradores existentes. |
| logger | Especifica el nombre del registrador que se va a modificar. Un registrador es un componente específico del sistema, como 'App' para aplicaciones generales o 'App.Table' para operaciones de tablas. |
| newSessions | Cuando se establece en TRUE, especifica que el cambio de nivel de registro se aplicará a todas las nuevas sesiones de CAS que se inicien después de este comando. Esto requiere privilegios de administrador. |
| onMain | Cuando se establece en TRUE, especifica que el cambio de nivel de registro también debe aplicarse al controlador principal del servidor CAS, afectando al núcleo del sistema. Esto requiere privilegios de administrador. |
La acción `log` opera sobre la configuración del servidor y no requiere datos de entrada en forma de tablas.
| 1 | /* No se necesita código de creación de datos para esta acción */ |
Al ejecutar la acción 'log' sin ningún parámetro, el servidor CAS devuelve una tabla que lista todos los registradores disponibles y sus niveles de registro actuales. Es el primer paso habitual para diagnosticar qué componentes están registrando información.
| 1 | PROC CAS; BUILTINS.log; RUN; |
Este ejemplo aumenta el nivel de detalle para el registrador 'App.Table', que se ocupa de las operaciones de la tabla CAS. Establecer el nivel en 'Info' registrará información más detallada sobre las acciones de la tabla, lo cual es útil para la depuración, pero solo para la sesión actual.
| 1 | |
| 2 | PROC CAS; |
| 3 | BUILTINS.log / logger='App.Table' level='Info'; |
| 4 | |
| 5 | RUN; |
| 6 |
Este es un caso de uso administrativo. Primero, el usuario asume el rol de 'superuser'. Luego, la acción 'log' se utiliza para establecer el nivel de registro de 'App' en 'Debug' para todas las nuevas sesiones que se creen en el servidor. Esto es útil para una depuración a gran escala del sistema.
| 1 | |
| 2 | PROC CAS; |
| 3 | ACCESSCONTROL.assumeRole / adminRole='superuser'; |
| 4 | |
| 5 | RUN; |
| 6 | BUILTINS.log / logger='App' level='Debug' newSessions=TRUE; |
| 7 | |
| 8 | RUN; |
| 9 | ACCESSCONTROL.dropRole / adminRole='superuser'; |
| 10 | |
| 11 | RUN; |
| 12 |