Publicado el :
Utilidad CREATION_INTERNE

Envío de un mensaje de depuración al registro

Este código también está disponible en: Français Deutsch English
La macro `_issueDebugMessage` está diseñada para facilitar la emisión de mensajes de depuración a un sistema de registro (logger). Toma dos parámetros: `loggername` (el nombre del registrador de destino) y `message` (el contenido del mensaje de depuración). Antes de llamar a la función `log4sas©_logevent`, la macro realiza validaciones para verificar que los parámetros `loggername` y `message` no estén vacíos. Si falta alguno de los parámetros, se emite una advertencia en el registro de SAS© y la macro finaliza. Si los parámetros son válidos, utiliza `%sysfunc(log4sas©_logevent(...))` para enviar el mensaje. Se realiza un control del código de retorno (`_rc`), y si este es diferente de cero, se informa un error. Esta macro es un componente del grupo SASUNIT_LOG4SAS©, lo que sugiere su uso en un contexto de prueba unitaria o desarrollo. La compatibilidad con SAS© Viya 4 depende de la configuración y disponibilidad adecuadas de la API Log4SAS©.
Análisis de datos

Type : CREATION_INTERNE


La macro no manipula directamente conjuntos de datos SAS. Procesa cadenas de caracteres (nombre del registrador y mensaje) que se proporcionan como parámetros. Estas cadenas se transmiten luego a la función `log4sas_logevent` para el registro. No hay dependencia de datos externos o de bibliotecas SAS estándar como SASHELP para su funcionamiento intrínseco.

1 Bloque de código
MACRO
Explicación :
Este bloque contiene la definición de la macro `_issueDebugMessage`. Comienza con verificaciones de la presencia de los parámetros `loggername` y `message`. Si falta un parámetro, se emite una advertencia `%put` y la macro finaliza. Si los parámetros son válidos, se llama a la función `%sysfunc(log4sas_logevent(...))` para escribir el mensaje de depuración en el registrador especificado. El código de retorno de esta función se almacena en `_rc` y se verifica para detectar posibles errores de registro.
¡Copiado!
1/**
2 \file
3 \ingroup SASUNIT_LOG4SAS
4 
5 \brief Issues an debug message to a logger
6
7 \version \$Revision$
8 \author \$Author$
9 \date \$Date$
10 
11 \copyright Copyright 2010-2023 HMS Analytical Software GmbH, http://www.analytical-software.de
12 This file is part of SASUnit, the Unit testing framework for SAS(R) programs.
13 For copyright information and terms of usage under the GNU Lesser General Public License see included file README.md
14 or https://github.com/HMS-Analytical-Software/SASUnit/wiki/readme/.
15
16 \param loggername Name of the logger to capture the message
17 \param message Message to be captured by the logger
18 
19 eturn message Message in the associated appender
20*//** \cond */
21%macro _issueDebugMessage(loggername, message);
22 %IF (%LENGTH(&loggername.)=0) %THEN %DO;
23 %put WARNING: loggername is null;
24 %return;
25 %END;
26 %IF (%LENGTH(&message.)=0) %THEN %DO;
27 %put WARNING: message is null;
28 %return;
29 %END;
30 %let _rc = %sysfunc(log4sas_logevent(&loggername., Debug, DEBUG: &message.));
31 %IF (&_rc ne 0) %THEN %DO;
32 %put ERROR: _rc is NOT null: &_rc.;
33 %END;
34%mend _issueDebugMessage;
35/** \endcond */
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
Información de copyright : Copyright 2010-2023 HMS Analytical Software GmbH, http://www.analytical-software.de This file is part of SASUnit, the Unit testing framework for SAS(R) programs. For copyright information and terms of usage under the GNU Lesser General Public License see included file README.md or https://github.com/HMS-Analytical-Software/SASUnit/wiki/readme/.