M-Detect - Analyseur de log pour IBMI

Différence entre versions

De MappingDoc
(Exemple)
(Exemple)
Ligne 51 : Ligne 51 :
 
       </email>
 
       </email>
 
       <lines>                                          <span style="color:green">//paramétrage des lignes à inclure/exclure dans le rapport</span>
 
       <lines>                                          <span style="color:green">//paramétrage des lignes à inclure/exclure dans le rapport</span>
               <include col="58" cmp="-eq">ERR</include>
+
               <include col="58" cmp="-eq">ERR</include>    <span style="color:green">//Inclure si dans la ligne il y a la valeur '''ERR''' en colonne 58</span>
               <include col="40" len="50">err</include>
+
               <include col="40" len="50">err</include>    <span style="color:green">//Inclure si dans la ligne il y a la valeur '''err''' entre la colonne 40 et la colonne 90</span>
               <include>non restauré(s) dans</include>
+
               <include>non restauré(s) dans</include>      <span style="color:green">//Inclure si dans la ligne il y a la valeur '''non restauré(s)'''</span>
               <include>; code fin 40 .</include>
+
               <include>; code fin 40 .</include>          <span style="color:green">//Inclure si dans la ligne il y a la valeur '''; code fin 40'''</span>
               <include>; code fin 30 .</include>
+
               <include>; code fin 30 .</include>          <span style="color:green">//Inclure si dans la ligne il y a la valeur '''; code fin 30'''</span>
               <include>; code fin 50 .</include>
+
               <include>; code fin 50 .</include>          <span style="color:green">//Inclure si dans la ligne il y a la valeur '''; code fin 50'''</span>
               <include>; code fin 20 .</include>
+
               <include>; code fin 20 .</include>          <span style="color:green">//Inclure si dans la ligne il y a la valeur '''; code fin 20'''</span>
               <include>; code fin 60 .</include>
+
               <include>; code fin 60 .</include>          <span style="color:green">//Inclure si dans la ligne il y a la valeur '''; code fin 60'''</span>
               <include>LOT DEJA TRAITE LE</include>
+
               <include>LOT DEJA TRAITE LE</include>        <span style="color:green">//Inclure si dans la ligne il y a la valeur '''LOT DEJA TRAITE LE'''</span>
               <include>lot refuse</include>
+
               <include>lot refuse</include>                <span style="color:green">//Inclure si dans la ligne il y a la valeur '''lot refuse'''</span>
               <exclude>: la facture de la précédente</exclude>
+
               <exclude>: la facture de la précédente</exclude>              <span style="color:green">//Exclure si dans la ligne il y a la valeur ''': la facture de la précédente'''</span>
               <exclude>Message....: ERR : données GOP incomplètes</exclude>
+
               <exclude>Message....: ERR : données GOP incomplètes</exclude>  <span style="color:green">//Exclure si dans la ligne il y a la valeur '''Message....: ERR : données GOP incomplètes'''</span>
               <exclude>ERR : impossible de traiter Org</exclude>
+
               <exclude>ERR : impossible de traiter Org</exclude>            <span style="color:green">//Exclure si dans la ligne il y a la valeur '''ERR : impossible de traiter Org'''</span>
               <exclude>ERR : Paramètrage non trouvé.</exclude>
+
               <exclude>ERR : Paramètrage non trouvé.</exclude>              <span style="color:green">//Exclure si dans la ligne il y a la valeur '''>ERR : Paramètrage non trouvé.'''</span>
               <nextline col="1" len="39" cmp="empty"></nextline>
+
               <nextline col="1" len="39" cmp="empty"></nextline>            
 
               <reject-splf>Spool_demo</reject-splf>
 
               <reject-splf>Spool_demo</reject-splf>
 
       </lines>
 
       </lines>
 
     </spool>
 
     </spool>
 
  </param>
 
  </param>

Version du 19 mars 2021 à 10:38

Introduction

Cette documentation décrit le cas d'usage d'un de nos clients de M-Detect permettant de détecter certaines erreurs dans leurs logs IBMI. (QPJOBLOG)

De manière générale, l'analyseur de log M-Detect permet de :

  • Anticiper les incidents
  • Identifier les erreurs dans la masse d’information
  • Réduire le temps consacré à l’analyse
  • Prévenir le bon interlocuteur suivant les règles définies


Le but principal étant d'Assurer la qualité de service en anticipant les incidents.

Principe de fonctionnement

Le fichier spool de log QPJOBLOG est envoyé à un serveur ONYX. Un fichier de paramétrage est utilisé pour déterminer quelles lignes du fichier QPJOBLOG doivoient être incluse et/ou excluse du rapport généré et envoyé par email par M-Detect.

MDE 1.jpg


MDE 2.jpg

Fichier de paramétrage

Le fichier de paramétrage permet de paramétrer les remontés de logs.

Exemple

<param>
   <spool>
     <attributes>                                      //Si le spool reçu depuis IMBI respecte les critères suivants
             <USER cmp="not-contains">MER</USER>                  //Le nom de l'utilisateur du spool ne contient pas la valeur "MER"                  
             <SPLF>QPJOBLOG</SPLF>                                //Le nom du spool est QPJOBLOG                  
             <SPLF>QPJOBLOG1</SPLF>                               //OU Le nom du spool est QPJOBLOG1                                
             <SPLNUM cmp="-le">1<SPLNUM>                          //Le numéro de spool est inférieur ou égal à 1  
             <JOB cmp="begin">FACPRD</JOB>                        //Le nom du job commence par FACPRD
             <HOSTNAME>ASP2</HOSTNAME>                            //Le nom du host vaut FACPRD
             <NBPAGES cmp="-le">500</NBPAGES>                     //Le nombre de pages est inférieur ou égal à 500
             <OUTQ cmp="-ne">PRT9</OUTQ>                          //L'OUTQ d'origine IBMI est différent de PRT9
             <USRDTA>MY CUSTOM DATA</USRDTA>                      //L'attribut du spool Référence utilisateur est égale à MY CUSTOM DATA
     </attributes>
     <variables>                                       //On initialise des variables avec le contenu du spool
             <variable name="VARENV" page="1" line="4" col="42" len="3"/>   //On crée et initialise la variable VARENV avec le contenu du spool en page 1, ligne 4, colonne 42 sur une longueur de 3
             <variable name="test" page="2" line="9" col="60" len="6"/>     //On crée et initialise la variable test avec le contenu du spool en page 2, ligne 9, colonne 60 sur une longueur de 6
     </variables>
     <email>                                          //paramétrage de l'envoi d'email
             <from>citmapping@mappingsuite.com</from>
             <to>nsmet@mappingsuite.com</to>
             <to>test@gmail.com</to>
             <cc>jdieu@mappingsuite.com</cc>
             <mll-file>ACH600_CDCHS.mll</mll-file>
             <mll-file>Mailing_list_2.txt</mll-file>
             <object>[[test]] [[VARENV]]- ASP1 ANO - Journalière - [[JOB]] de [[USER]] n° [[JOBNUM]] - [[DATESPL]] --> QPJOBLOG</object>
              <message>Ceci est le corps de message de mon mail pour [[USER]]</message>
     </email>
     <lines>                                          //paramétrage des lignes à inclure/exclure dans le rapport
             <include col="58" cmp="-eq">ERR</include>    //Inclure si dans la ligne il y a la valeur ERR en colonne 58
             <include col="40" len="50">err</include>     //Inclure si dans la ligne il y a la valeur err entre la colonne 40 et la colonne 90
             <include>non restauré(s) dans</include>      //Inclure si dans la ligne il y a la valeur non restauré(s)
             <include>; code fin 40 .</include>           //Inclure si dans la ligne il y a la valeur ; code fin 40
             <include>; code fin 30 .</include>           //Inclure si dans la ligne il y a la valeur ; code fin 30
             <include>; code fin 50 .</include>           //Inclure si dans la ligne il y a la valeur ; code fin 50
             <include>; code fin 20 .</include>           //Inclure si dans la ligne il y a la valeur ; code fin 20
             <include>; code fin 60 .</include>           //Inclure si dans la ligne il y a la valeur ; code fin 60
             <include>LOT DEJA TRAITE LE</include>        //Inclure si dans la ligne il y a la valeur LOT DEJA TRAITE LE
             <include>lot refuse</include>                //Inclure si dans la ligne il y a la valeur lot refuse
             <exclude>: la facture de la précédente</exclude>               //Exclure si dans la ligne il y a la valeur : la facture de la précédente
             <exclude>Message....: ERR : données GOP incomplètes</exclude>  //Exclure si dans la ligne il y a la valeur Message....: ERR : données GOP incomplètes
             <exclude>ERR : impossible de traiter Org</exclude>             //Exclure si dans la ligne il y a la valeur ERR : impossible de traiter Org
             <exclude>ERR : Paramètrage non trouvé.</exclude>               //Exclure si dans la ligne il y a la valeur >ERR : Paramètrage non trouvé.
             <nextline col="1" len="39" cmp="empty"></nextline>             
             <reject-splf>Spool_demo</reject-splf>
     </lines>
   </spool>
</param>