Chaque contexte associé à un fichier journal particulier est constitué d'une série de composants. Chaque composant a un rôle à jouer dans le traitement du fichier journal.
Le contexte décrit le groupement ordonné des composants tels qu'ils s'enchaînent pour le traitement des fichiers journaux. Chaque fichier journal dispose d'un contexte distinct et il est possible de définir plusieurs contextes dans une seule et même configuration. L'adaptateur de journal générique fournit un contexte :
Un contexte dispose des propriétés suivantes :
| Propriété | Type | Comportement |
|---|---|---|
| Description | Chaîne | Description du contexte. Cette valeur est utilisée uniquement par l'éditeur de configuration d'adaptateur. |
| ID unique | Chaîne | Identificateur unique du composant. Le contexte se réfère à cette chaîne pour identifier l'instance du composant à utiliser. |
| Opération continue | Booléen | Indique si les modifications apportées au fichier journal doivent être surveillées selon les propriétés Délai d'inactivité maximal et Intervalle d'interruption. |
| Délai d'inactivité maximal | Entier (millisecondes) | Durée maximale pendant laquelle le contexte attend qu'un fichier journal soit modifié avant de s'arrêter. |
| Intervalle d'interruption | Entier (millisecondes) | Durée pendant laquelle le contexte doit patienter après avoir atteint la fin d'un fichier journal avant de tenter une nouvelle lecture. |
Le détecteur fournit le mécanisme de lecture du contenu en vue de son traitement. L'adaptateur de journal générique fournit les détecteurs suivants :
Le tableau suivant répertorie les attributs communs aux
types de détecteur.
Attributs des détecteurs
| Nom d'attribut | Type | Comportement |
|---|---|---|
| Type de détecteur | Chaîne | Type de détecteur à utiliser par l'adaptateur. |
| Description (obligatoire) | Chaîne | Description du détecteur. Cette valeur est utilisée uniquement par l'éditeur de configuration d'adaptateur. |
| ID unique (obligatoire) | Chaîne | Identificateur unique du composant. Le détecteur se réfère à cette chaîne pour identifier l'instance du composant à utiliser. |
| Blocage maximal (obligatoire) | Entier | Nombre maximal de lignes lues par le détecteur avant la transmission à l'extracteur pour traitement. Pour le type StaticParserSensor, cette zone indique le nombre maximal d'objets CBE créés par le programme d'analyse statique avant la transmission au module Outputter pour traitement. |
| Taille de la mémoire tampon de référence | Entier | Les n derniers octets d'un fichier à sauvegarder et permettant de savoir si un ajout a eu lieu dans le fichier depuis sa dernière lecture. |
| Taille du bas de page du fichier | Entier | Les n octets d'un fichier comportant le contenu d'une variable. Le bas de page d'un fichier n'est pas utilisé pour savoir si un ajout a eu lieu dans le fichier depuis sa dernière lecture. |
Le tableau suivant répertorie les propriétés spécifiques de chaque type de détecteur. Les propriétés suivantes sont connues par le code du composant et doivent être orthographiées exactement telles qu'elles sont indiquées dans le tableau pour être reconnues et utilisées par le composant.
| Type de détecteur | Propriétés | Application |
|---|---|---|
| SingleFileSensor |
|
Utilisé lors de la création d'un adaptateur en vue de l'analyse syntaxique d'un fichier journal avec des règles d'expression régulière. |
| StaticParserSensor |
|
Utilisé lors de la création d'un adaptateur en vue de l'analyse syntaxique d'un fichier journal avec une classe Java de programme d'analyse statique. |
L'extracteur extrait plusieurs lignes d'entrée fournies par le détecteur et les sépare en frontières de message.
L'adaptateur de journal générique fournit les extracteurs suivants :
Les propriétés suivantes sont indiquées dans la configuration de l'extracteur :
| Propriété | Type | Comportement |
|---|---|---|
| Description | Chaîne | Description de l'extracteur. Cette valeur est utilisée uniquement par l'éditeur de configuration d'adaptateur. |
| ID unique | Chaîne | Identificateur unique du composant. L'extracteur se réfère à cette chaîne pour identifier l'instance du composant à utiliser. |
| Contient des retours à la ligne | Booléen | Indique si les messages du fichier journal s'étendent sur plusieurs lignes. |
| Remplace les retours à la ligne | Booléen | Remplace les retours à la ligne du fichier par un autre segment de chaîne. Le remplacement est effectué avant que l'extracteur ne recherche les schémas de début et de fin. |
| Symbole de retour à la ligne | Chaîne | Segment de chaîne devant remplacer les retours à la ligne. Est utilisé uniquement si la propriété Remplace les retours à la ligne prend la valeur True. |
| Inclure le schéma de début | Booléen | Indique si le schéma de début doit être inclus dans le message à transmettre au prochain composant. Si la valeur est False, la partie correspondante du message est rayée. |
| Schéma de début | Chaîne ou expression régulière | Segment de chaîne identifiant le début d'un message. Vous pouvez toujours utiliser la classe RegularExpressionExtractor. Toutefois, si le schéma de début est une chaîne simple, la classe SimpleExtractor utilise moins de temps système. |
| Inclure le schéma de fin | Booléen | Indique si le schéma de fin doit être inclus dans le message à transmettre au prochain composant. Si la valeur est False, la partie correspondante du message est rayée. |
| Schéma de fin | Chaîne ou expression régulière | Segment de chaîne identifiant la fin d'un message. Si le schéma de fin n'est pas spécifié, le message est délimité par le schéma de fin suivant. |
Le programme d'analyse syntaxique prend les messages délimités par l'extracteur et génère un ensemble de mappages de valeurs de chaîne vers une structure de données. Dans le cas de l'adaptateur de journal générique, la structure de données est CBE 1.0.1
L'adaptateur de journal générique fournit la classe de programme d'analyse syntaxique suivante :
Le programme d'analyse syntaxique est exécuté en deux phases :
Les deux phases d'exécution permettent la segmentation du message en une série de valeurs d'attribut pendant la phase de traitement global. Il est ensuite possible de faire référence aux valeurs d'attribut par les noms d'attribut ou l'index pendant la phase de traitement des attributs.
Les propriétés globales suivantes sont spécifiées dans le programme d'analyse syntaxique :
| Propriété | Type | Comportement |
|---|---|---|
| Description | Chaîne | Description du programme d'analyse syntaxique. Cette valeur est utilisée uniquement par l'éditeur de configuration d'adaptateur. |
| ID unique | Chaîne | Identificateur unique du composant. Le programme d'analyse syntaxique se réfère à cette chaîne pour identifier l'instance du composant à utiliser. |
| Sème de séparateur | Chaîne ou expression régulière | Sème ou
expression régulière décrivant une série de sèmes, pouvant décomposer le
message en paires attribut-valeur. Par exemple, si chaque nouvelle ligne du fichier journal comporte un attribut et sa valeur, vous pouvez spécifier un sème de séparateur \n. L'avantage de la décomposition du message est la possibilité de référence aux segments de chaîne dans la phase de traitement des attributs. |
| Sème de désignation | Chaîne ou expression régulière | Sème ou expression régulière décrivant une série de sèmes, pouvant décomposer les segments de chaîne créés par le sème de désignation en paires attribut-valeur. Par exemple, si chaque attribut et chaque valeur sont séparés par le signe =, et que la valeur du sème de désignation est =, il est possible de faire référence à l'attribut et à sa valeur lors de la phase de traitement des attributs. Si un sème de séparateur est spécifié, mais qu'aucun sème de désignation n'est indiqué, le message est décomposé en une liste de valeur d'attribut, à laquelle il est possible de faire référence dans les règles de substitution via l'index. |
Les attributs individuels de CBE ont les propriétés suivantes :
| Propriété | Type | Comportement |
|---|---|---|
| Utiliser la substitution de l'occurrence précédente comme valeur par défaut | Booléen | Si l'ensemble de règles de substitution en cours pour cet attribut renvoi une correspondance positive, stockez la valeur de correspondance de telle sorte qu'elle puisse être utilisée comme valeur par défaut pour traiter l'enregistrement suivant s'il n'existe pas de correspondance positive. |
| Valeur par défaut | Chaîne | Si aucune règle de substitution de cet attribut ne fournit de correspondance positive ou s'il n'existe aucune règle de substitution pour cet attribut, la valeur par défaut spécifiée ici lui est affectée. Si vous souhaiter affecter la même valeur à tous les enregistrements d'un attribut particulier, vous pouvez employer cette propriété au lieu de créer une règle de substitution par défaut pour cet attribut. La propriété Utiliser la substitution de l'occurrence précédente comme valeur par défaut est prioritaire si aucune valeur sauvegardée n'est disponible. |
Les règles de substitution sont exécutées au cours de la phase de traitement des attributs. Elles sont traitées dans l'ordre, du haut vers le bas. Lorsqu'une règle trouve une occurrence, les autres règles ne sont pas exécutées sur cette propriété. Si aucune occurrence n'est trouvée, aucune valeur n'est placée dans l'attribut, sauf si la propriété Utiliser la substitution de l'occurrence précédente comme valeur par défaut ou Valeur par défaut de l'attribut est spécifiée.
Les règles de substitution ont les propriétés suivantes :
| Propriété | Type | Comportement |
|---|---|---|
| Occurrence | Expression régulière | Expression régulière identifiant la valeur à appliquer à cet attribut si une occurrence est trouvée dans la portée du segment de chaîne traité par cette règle de substitution. Si vous n'indiquez pas d'expression régulière, la règle est considérée comme une occurrence. |
| Positions | Paires d'attribut nom-valeur |
Paires d'attribut nom-valeur créées lors de la phase de traitement
global.
Dans la propriété Occurrence, vous pouvez ajouter un séparateur pour indiquer les expressions régulières à appliquer à telle valeur d'attribut. La propriété Substituer peut faire référence à ces atomes d'attribut via $1, $2, etc. |
| Substituer | Chaîne | Valeur à placer dans l'attribut. Il peut s'agir d'une chaîne ou d'une référence à l'expression régulière de la propriété Occurrence. Il est possible de faire référence aux segments de chaîne extraits par la propriété Occurrence en utilisant les regroupements dans l'expression régulière. $1 indique le premier regroupement, $2 le deuxième, et ainsi de suite. |
| Utiliser la fonction intégrée | Case à cocher |
La propriété Utiliser la fonction intégrée
sélectionnée pour un attribut, si aucune des règles de substitution
précédentes, le cas échéant, ne trouve de correspondance, entraîne la
génération par l'adaptateur de fichier journal d'une valeur pour
l'attribut utilisant ses propres fonctions internes.
Cette fonctionnalité est prise en charge uniquement par les attributs
CBE suivants :
|
| Classe d'extension de substitution | Chaîne |
Spécifie le nom d'une classe Java créée par l'utilisateur pouvant
analyser de manière personnalisée la syntaxe de la logique de la
valeur correspondant aux spécifications Positions,
Occurrence et Substituer de la règle.
Si la règle de substitution correspond aux données de
l'enregistrement, cette classe est appelée et le résultat est utilisé
pour la création de l'objet CBE.
Spécifications :
|
| Format de l'heure | Chaîne | Cette zone s'applique uniquement aux règles de substitution de l'élément creationTime et est utilisée pour simplifier l'analyse syntaxique de la date et de l'heure. Par exemple, certains fichiers journaux contiennent des horodatages incluant les noms de mois au lieu des représentations numériques correspondantes. Cela rend ainsi difficile la création des règles de substitution devant générer la valeur de la chaîne au format du type de données dateTime du schéma XML requis par l'élément CBE creationTime. Dans ce cas, l'utilisateur peut spécifier une chaîne de format de date Java simple, comme indiqué dans la documentation javadoc relative à java.text.SimpleDateFormat (java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html) dans la zone Format de l'heure. La valeur correspondant aux spécifications Positions, Occurrence et Substituer de la règle est analysé en fonction de la chaîne Format de l'heure et ma valeur résultante est utilisée pour générer la valeur CBE creationTime. |
Le module de formatage effectue le mappage des attributs vers leurs valeurs fournies par le programme d'analyse syntaxique et compile l'instance d'objet Java appropriée. Le module d'exécution de l'adaptateur comporte un seul module de formatage qui crée les objets CBE conformément à la spécification CBE 1.0.1.
Le module de formatage a les propriétés suivantes :
| Propriété | Type | Comportement |
|---|---|---|
| ID unique | Chaîne | Identificateur unique du composant. Le module de formatage se réfère à cette chaîne pour identifier l'instance du composant à utiliser. |
| Description | Chaîne | Description du module de formatage. Cette valeur est utilisée uniquement par l'éditeur de configuration d'adaptateur. |
Le module Outputter externalise les enregistrements CBE résultants fournis par le module de formatage. Les modules Outputter fournissent ou recherchent en boucle le mécanisme de stockage des sorties finales du contexte. L'adaptateur de journal générique Hyades a les propriétés suivantes :
Propriétés de module Outputter :
| Propriété | Type | Comportement |
|---|---|---|
| ID unique | Chaîne | Identificateur unique du composant. Le module Outputter se réfère à cette chaîne pour identifier l'instance du composant à utiliser. |
| Description | Chaîne | Description du module Outputter. Cette valeur est utilisée uniquement par l'éditeur de configuration d'adaptateur. |
| Type d'outputter | Enumération | Type de module Outputter. |
Types d'outputter et propriétés obligatoires :
| Type d'outputter | Propriétés obligatoires |
|---|---|
| StandardOutOutputter | Aucune |
| SingleFileOutputter | directory, fileName |
| LoggingAgentOutputter | agentName - nom
donné à l'agent de consignation lors de sa création waitUntilLoggingTime (facultatif) - durée pendant laquelle le module Outputter attend que l'utilisateur associe et démarre la surveillance de l'agent avant qu'il ne commence à écrire sur l'agent. Si cette propriété n'est pas spécifiée, le module Outputter n'attend pas la surveillance de l'agent avant d'y écrire des informations. |
| NotificationOutputter | resourceURL - URL du collecteur de notification qui reçoit les événements |
Concepts connexes
Présentation de l'adaptateur de journal générique Hyades
Spécification du format Common Base Event
Tâches connexes
Création d'un programme d'analyse syntaxique de journal
Création d'un adaptateur fondé sur des règles
Création d'un adaptateur statique
Références connexes
Structure du fichier de configuration d'adaptateur
Spécification du format Common Base Event
Editeur de configuration d'adaptateur
Syntaxe d'une expression régulière
(C) Copyright IBM Corporation 2000, 2004. All Rights Reserved.