Publié le :
Macro CREATION_INTERNE

Macro mp_perflog - Journalisation des performances

Ce code est également disponible en : Deutsch English Español
En attente de validation
La macro `mp_perflog` permet de logger des messages avec un horodatage précis et l'identifiant du job système. Elle est conçue pour être robuste : elle vérifie l'existence de la table de stockage (par défaut `work.mp_perflog`) à l'aide de la macro `%mf_existds` et l'initialise automatiquement si elle est absente. L'insertion des données est réalisée via `PROC SQL`.
Analyse des données

Type : CREATION_INTERNE


La table de stockage est gérée en interne : elle est créée par le script lors du premier appel si elle n'existe pas.

1 Bloc de code
DATA STEP Data
Explication :
Vérification conditionnelle de l'existence de la table cible. Si elle n'existe pas, un Data Step crée la structure vide avec les colonnes `sysjobid`, `label` et `dttm`.
Copié !
1%IF not (%mf_existds(&libds)) %THEN %DO;
2 DATA &libds;
3 LENGTH sysjobid $10 label $256 dttm 8.;
4 FORMAT dttm datetime19.3;
5 call missing(of _all_);
6 stop;
7 RUN;
8 %END;
2 Bloc de code
PROC SQL Data
Explication :
Ajout d'une nouvelle ligne dans la table de logs contenant l'ID du job système, le libellé du point de contrôle et l'horodatage courant.
Copié !
1PROC SQL;
2 insert into &libds
3 SET sysjobid="&sysjobid"
4 ,label=symget('label')
5 ,dttm=%sysfunc(datetime());
6 QUIT;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Informations de Copyright : Allan Bowe, SASjs Core (https://github.com/sasjs/core)