425 lines
7.5 KiB
Groff
425 lines
7.5 KiB
Groff
'\" t
|
|
.\" @(#)LIBTOOL.3 1.0 00/22/02 SMA;
|
|
.TH LIBTOOL 3 "22 Feb 2000"
|
|
.SH NOM
|
|
LIBTOOL (utilitaires pour la librairie LIBLOG)
|
|
.SH SYNOPSIS
|
|
.LP
|
|
.BI "cc [flag ...] file ... -lver -ldl -lnode -lshmem -ldatastr -ladm -llog -ltool [library ...]"
|
|
.LP
|
|
.BI "#include <tool.h>"
|
|
.LP
|
|
.BI "TLT_Status TL_Library_Stderr_Set ( FILE * " Out ");"
|
|
.LP
|
|
.BI "TLT_Status TL_LIBLOG_Load ( TL_Cache " To_Load " );"
|
|
.LP
|
|
.BI "TLT_Status TL_LIBLOG_Unload ( TL_Cache " To_Unload " );"
|
|
.LP
|
|
.BI "TLT_Status TL_Channel_RTab_Add ( LOGT_Channel * " Channel ", char * " Kunf_Name " );"
|
|
.LP
|
|
.BI "TLT_Status TL_Channel_Trigger_Add ( LOGT_Channel * " Channel ", char * " Kunf_Name " );"
|
|
.LP
|
|
.SH DESCRIPTION
|
|
.LP
|
|
La bibliotheque LIBTOOL fournit un ensemble d'utilitaires lies a la librairie LIBLOG :
|
|
.LP
|
|
.RS 3
|
|
- Creation de tables de routage et de triggers a partir de fichiers de configuration KUNF
|
|
.LP
|
|
- Mise a jour des caches de donnees de la librairie LIBLOG (cache des modules, cache des formats d'evenement, table de routage par defaut
|
|
.RS -3
|
|
.LP
|
|
.SH FONCTIONS
|
|
.LP
|
|
.BI "TLT_Status TL_Library_Stderr_Set ( FILE * " Out " );"
|
|
.LP
|
|
.RS 3
|
|
Cette fonction permet de definir
|
|
.I Out
|
|
comme la sortie standard des messages d'erreur de la librarie.
|
|
.RS -3
|
|
.LP
|
|
.BI "TLT_Status TL_LIBLOG_Load ( TL_Cache " To_Load " );"
|
|
.LP
|
|
.RS 3
|
|
Cette fonction permet de charger les caches de donnees de la base de la librairie LIBLOG
|
|
.LP
|
|
L'argument
|
|
.I To_Load
|
|
represente la liste des caches de donnees a charger
|
|
, sous forme d'une combinaison binaire des trois valeurs suivantes :
|
|
.LP
|
|
.RS 3
|
|
-
|
|
.B TLD_KMOD
|
|
: pour charger le cache de modules
|
|
.LP
|
|
-
|
|
.B TLD_KFORMAT
|
|
: pour charger le cache de formats d'evenement
|
|
.LP
|
|
-
|
|
.B TLD_GDRT
|
|
: pour charger la table de routage par defaut
|
|
.LP
|
|
.RS -3
|
|
NB : les caches doivent etre prealablement vides avant d'etre charges.
|
|
.LP
|
|
.RS -3
|
|
.BI "TLT_Status TL_LIBLOG_Unload ( TL_Cache " To_Unload " );"
|
|
.LP
|
|
.RS 3
|
|
Cette fonction permet de vider les caches de donnees de la base de la librairie LIBLOG
|
|
.LP
|
|
L'argument
|
|
.I To_Unload
|
|
represente la liste des caches de donnees a vider
|
|
, sous forme d'une combinaison binaire des trois valeurs suivantes :
|
|
.RS 3
|
|
.LP
|
|
-
|
|
.B TLD_KMOD
|
|
: pour vider le cache de modules
|
|
.LP
|
|
-
|
|
.B TLD_KFORMAT
|
|
: pour vider le cache de formats d'evenement
|
|
.LP
|
|
-
|
|
.B TLD_GDRT
|
|
: pour vider la table de routage par defaut
|
|
.RS -3
|
|
.LP
|
|
.RS -3
|
|
.BI "TLT_Status TL_Channel_RTab_Add ( LOGT_Channel * " Channel ", char * " Kunf_Name " );"
|
|
.LP
|
|
.RS 3
|
|
Cette fonction permet d'ajouter toutes les tables de routage d'une section KUNF a un channel.
|
|
.LP
|
|
Elle attend les parametres suivants :
|
|
.LP
|
|
.RS 3
|
|
* (In)
|
|
.I Channel
|
|
: un pointeur sur le channel
|
|
.LP
|
|
* (In)
|
|
.I Kunf_Name
|
|
: le nom de la section KUNF
|
|
.RS -3
|
|
.LP
|
|
.RS -3
|
|
.BI "TLT_Status TL_Channel_Trigger_Add ( LOGT_Channel * " Channel ", char * " Kunf_Name " );"
|
|
.LP
|
|
.RS 3
|
|
Cette fonction permet d'ajouter tous les triggers d'une section KUNF a un channel.
|
|
.LP
|
|
Elle attend les parametres suivants :
|
|
.RS 3
|
|
.LP
|
|
* (In)
|
|
.I Channel
|
|
: un pointeur sur le channel
|
|
.LP
|
|
* (In)
|
|
.I Kunf_Name
|
|
: le nom de la section KUNF
|
|
.RS -3
|
|
.LP
|
|
.SH FICHIER DE CONFIGURATION
|
|
.LP
|
|
Le fichier KUNF contient deux types de sections:
|
|
.RS 3
|
|
.LP
|
|
-
|
|
.B [ROOTING_TABLE]
|
|
: liste des tables de routage
|
|
.LP
|
|
-
|
|
.B [TRIGGER]
|
|
: liste des triggers
|
|
.RS -3
|
|
.LP
|
|
Chaque table de routage est identifiee par une sous-section de la forme
|
|
.B [ROOTING_TABLE:<table_name>]
|
|
.
|
|
.LP
|
|
Les regles de routage sont designees par une section de la forme
|
|
.B [ROOTING_TABLE:<table_name>:<rule_name>]
|
|
.
|
|
.LP
|
|
Une regle de routage definit les proprietes suivantes :
|
|
.RS 3
|
|
.LP
|
|
*
|
|
.B class
|
|
: ce tag definit la classe de la regle et peut prendre les valeurs suivantes :
|
|
.LP
|
|
.RS 3
|
|
-
|
|
.B ALL
|
|
pour selectionner tous les evenements
|
|
.LP
|
|
-
|
|
.B GRV
|
|
pour selectionner les evenements selon leur gravite
|
|
.LP
|
|
-
|
|
.B RC
|
|
pour selectionner les evenements selon leur code retour associe
|
|
.LP
|
|
-
|
|
.B TYPE
|
|
pour selectionner les evenements selon leur type
|
|
.RS -3
|
|
.LP
|
|
*
|
|
.B rule
|
|
: ce tag definit la regle elle-meme et peut prendre les valeurs suivantes :
|
|
.LP
|
|
.RS 3
|
|
- pour la classe
|
|
.B ALL
|
|
: aucune valeur a definir
|
|
.LP
|
|
- pour la classe
|
|
.B GRV
|
|
:
|
|
.B INFO
|
|
,
|
|
.B TRACE
|
|
,
|
|
.B FONCT
|
|
,
|
|
.B DETAIL
|
|
,
|
|
.B STAT
|
|
,
|
|
.B ERR
|
|
,
|
|
.B REJDON
|
|
,
|
|
.B REJENR
|
|
,
|
|
.B WARNING
|
|
,
|
|
.B RECYCLE
|
|
,
|
|
.B EXIT
|
|
,
|
|
.B ABEND
|
|
.LP
|
|
- pour la classe
|
|
.B RC
|
|
:
|
|
.B OK
|
|
,
|
|
.B ANOERR
|
|
,
|
|
.B REJDON
|
|
,
|
|
.B REJENR
|
|
,
|
|
.B WARNING
|
|
,
|
|
.B RECYCLE
|
|
,
|
|
.B EXIT
|
|
,
|
|
.B ABEND
|
|
.LP
|
|
- pour la classe
|
|
.B TYPE
|
|
: expression reguliere sur le type d'evenement
|
|
.LP
|
|
.I Attention
|
|
: le caractere ':' etant interdit dans les sections kunf, on le notera conventionnellement par "{2pts}".
|
|
.LP
|
|
Les expressions regulieres seront notees selon le standard UNIX (voir regexp).
|
|
.LP
|
|
.RS -3
|
|
*
|
|
.B rooting
|
|
: ce tag definit le routage associe a la regle et peut prendre les valeurs suivantes :
|
|
.LP
|
|
.RS 3
|
|
-
|
|
.B DATABASE
|
|
: routage de l'evenement vers la base de suivi
|
|
.LP
|
|
-
|
|
.B STDERR
|
|
: routage de l'evenement vers la sortie standard d'erreur
|
|
.LP
|
|
-
|
|
.B NULL
|
|
: routage de l'evenement vers /dev/null (i.e l'evenement n'est pas traite)
|
|
.LP
|
|
-
|
|
.B DEFAULT
|
|
: routage par defaut
|
|
.LP
|
|
-
|
|
.B PREVIOUS
|
|
: routage de la table precedente du channel
|
|
.RS -3
|
|
.LP
|
|
.RS -3
|
|
Chaque trigger est identifie par une section de la forme
|
|
.B [ROOTING_TABLE:<trigger_name>]
|
|
.
|
|
.LP
|
|
A un trigger sont associees plusieurs proprietes :
|
|
.RS 3
|
|
.LP
|
|
*
|
|
.B event
|
|
: ce tag designe le type d'evenement declencheur du trigger (expression reguliere)
|
|
.LP
|
|
*
|
|
.B type
|
|
: ce tag definit le type du trigger et peut prendre les valeurs suivantes :
|
|
.RS 3
|
|
.LP
|
|
-
|
|
.B ADD
|
|
pour un trigger qui ajoute une table de routage a un channel
|
|
.LP
|
|
-
|
|
.B REMOVE
|
|
pour un trigger qui supprime une table de routage d'un channel
|
|
.RS -3
|
|
.LP
|
|
*
|
|
.B mode
|
|
: ce tag designe la persistance du trigger et peut prendre les valeurs suivantes :
|
|
.RS 3
|
|
.LP
|
|
-
|
|
.B ONE_SHOT
|
|
pour un trigger qui ne fonctionne qu'une seule fois
|
|
.LP
|
|
-
|
|
.B PERMANENT
|
|
pour un trigger qui fonctionne tant qu'il n'est pas desactive
|
|
.RS -3
|
|
.LP
|
|
*
|
|
.B rooting_table
|
|
: ce tag definit le nom de la table de routage concernee par le trigger
|
|
.RS -3
|
|
.LP
|
|
.LP
|
|
.I Exemple
|
|
:
|
|
.LP
|
|
.RS 3
|
|
[ROOTING_TABLE]
|
|
.LP
|
|
[ROOTING_TABLE:TOTO]
|
|
.LP
|
|
[ROOTING_TABLE:TOTO:RULE1]
|
|
.LP
|
|
class=ALL
|
|
.LP
|
|
rooting=DATABASE
|
|
.LP
|
|
[ROOTING_TABLE:TOTO:RULE2]
|
|
.LP
|
|
class=RC
|
|
.LP
|
|
rule=REJENR
|
|
.LP
|
|
rooting=STDERR+DATABASE
|
|
.LP
|
|
[ROOTING_TABLE:TOTO:RULE3]
|
|
.LP
|
|
class=TYPE
|
|
.LP
|
|
rule=COMPTEUR.*
|
|
.LP
|
|
rooting=NULL
|
|
.LP
|
|
[ROOTING_TABLE:TITI]
|
|
.LP
|
|
[ROOTING_TABLE:TOTO:RULE1]
|
|
.LP
|
|
class=ALL
|
|
.LP
|
|
rooting=PREVIOUS
|
|
.LP
|
|
[ROOTING_TABLE:TOTO:RULE2]
|
|
.LP
|
|
class=GRV
|
|
.LP
|
|
rule=WARNING
|
|
.LP
|
|
rooting=DEFAULT
|
|
.LP
|
|
[ROOTING_TABLE:TOTO:RULE3]
|
|
.LP
|
|
class=RC
|
|
.LP
|
|
rule=ABEND
|
|
.LP
|
|
rooting=STDERR
|
|
.LP
|
|
[ROOTING_TABLE:TOTO:RULE4]
|
|
.LP
|
|
class=TYPE
|
|
.LP
|
|
rule=*SQLERR*
|
|
.LP
|
|
rooting=STDERR
|
|
.LP
|
|
[TRIGGER]
|
|
.LP
|
|
[TRIGGER:TATA]
|
|
.LP
|
|
event=COMPTEUR.*@.*{2pts}.*{2pts}TB.*
|
|
.LP
|
|
type=ADD
|
|
.LP
|
|
rooting_table=TOTO
|
|
.LP
|
|
mode=ONE_SHOT
|
|
.LP
|
|
.RS -3
|
|
Dans l'exemple ci-dessus, le fichier de configuration definit deux tables de routage nommees TOTO (3 regles) et TITI (4 regles) et un trigger nomme TATA.
|
|
.LP
|
|
.I NB
|
|
: les noms des regles de routage sont libres. Ils doivent seulement etre differents les uns des autres pour une meme table de routage.
|
|
.LP
|
|
Pour davantage de precisions sur la notion de table de routage ou de trigger, le lecteur se referera a la documentation de la librairie LIBLOG.
|
|
.LP
|
|
.RS -3
|
|
.SH CODES RETOUR
|
|
.LP
|
|
Toutes les fonctions constituant l'API de la librairie LIBTOOL retournent un code de type
|
|
.B TLT_Status
|
|
:
|
|
.LP
|
|
.RS 3
|
|
-
|
|
.B TLS_OK
|
|
si la fonction s'est correctement executee
|
|
.LP
|
|
-
|
|
.B TLS_KO
|
|
si une erreur s'est produite
|
|
.RS -3
|
|
.LP
|
|
En cas d'erreur, la variable
|
|
.B TL_Error_Msg
|
|
contient un message du type :
|
|
.LP
|
|
.RS 3
|
|
Error <Nom fonction> : <message d'erreur>
|
|
.RS -3
|
|
.LP
|
|
Dans une prochaine version, la librairie proposera des codes retour plus explicites, permettant de distinguer les differents types d'erreur.
|
|
.LP
|
|
.SH VOIR AUSSI
|
|
.B liblog
|
|
(3)
|