Il est bien pratique de pouvoir recevoir un mail lorsqu'un message arrive dans le journal système ERRPT.
Pour cela, il faut ajouter dans la table 'errornotify' un paragraphe pour spécifier sur quel évènement le script doit être appelé.
Commençons par interroger la table 'errornotify' pour obtenir la structure d'un paragraphe :
# odmget errornotify
...
errnotify:
en_pid = 0
en_name = "ha_scsi2_4"
en_persistenceflg = 1
en_label = "SCSI_ERR9"
en_crcid = 0
en_class = "H"
en_type = "PERM"
en_alertflg = ""
en_resource = "scsi2"
en_rtype = "sym1010"
en_rclass = "adapter"
en_symptom = ""
en_err64 = ""
en_dup = ""
en_method = "/usr/es/sbin/cluster/diag/cl_logerror $6 $9"
A partir de ce paragraphe stocké dans un fichier texte, nous allons pouvoir modifier les champs pour notre événement.
Nous modifions le fichier texte (/tmp/newaction.txt) par exemple pour exécuter le script 'errornotify.sh' dans tous les cas de message, ce qui donne:
errnotify:
en_pid = 0
en_name = "PERSO1"
en_persistenceflg = 1
en_label = ""
en_crcid = 0
en_class = ""
en_type = ""
en_alertflg = ""
en_resource = ""
en_rtype = ""
en_rclass = ""
en_symptom = ""
en_err64 = ""
en_dup = ""
en_method = "/nim/script/manapp/tools/errornotify.sh $1 $2 $3 $4 $4 $6 $7 $8 $9"
Enfin, il ne reste plus qu'à insérer ce paragraphe dans la base ODM de la table 'errornotify' :
# odmadd /tmp/newaction.txt
#
Le test est réalisé par la commande :
# errlogger "Mon message errpt"
Le message est alors présent dans les journaux de ERRPT :
# errpt
IDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTION
AA8AB241 0215110821 T O OPERATOR OPERATOR NOTIFICATION
Afin de mieux suivre et diagnostiquer les traitements, il est conseillé de faire une redirection des sortie standard et erreur depuis le script appelé( errornotify.sh)