Jeder Kontext, der einer bestimmten Protokolldatei zugeordnet ist, besteht aus einer Reihe von Komponenten. Jede Komponente spielt bei der Verarbeitung einer Protokolldatei eine bestimmte Rolle.
Der Kontext beschreibt die Reihenfolge und Gruppierung von Komponenten, in der diese Komponenten für die Verarbeitung der Protokolldatei verkettet sind. Jede Protokolldatei verfügt über einen eigenen Kontext, und in einer einzelnen Konfiguration können mehrere Kontexte definiert sein. Der generische Protokolladapter stellt einen Kontext zur Verfügung:
Ein Kontext verfügt über die folgenden Eigenschaften:
| Eigenschaft | Typ | Verhalten |
|---|---|---|
| Beschreibung | string (Zeichenfolge) | Eine Textbeschreibung des Kontexts. Dieser Wert wird nur vom Editor für Adapterkonfiguration verwendet. |
| Eindeutige ID | string (Zeichenfolge) | Eine eindeutige Kennung für diese Komponente. Der Kontext verweist auf diese Zeichenfolge, um das zu verwendende Exemplar der Komponente zu identifizieren. |
| Ist Unterbrechungsfreie Operation | boolean (Boolescher Wert) | Gibt an, ob diese Protokolldatei auf Grundlage der Eigenschaften 'Maximale Leerlaufzeit' und 'Pausenintervall' auf Änderungen überwacht werden soll oder nicht. |
| Maximale Leerlaufzeit | integer (ganze Zahl, Millisekunden) | Die maximale Zeitspanne, die der Kontext auf Änderungen an einer Protokolldatei wartet, bevor er sich selbst inaktiviert. |
| Pausenintervall | integer (ganze Zahl, Millisekunden) | Die Zeitspanne, die der Kontext nach Erreichen des Endes der Protokolldatei wartet, bevor ein erneuter Leseversuch vorgenommen wird. |
Ein Sensor liefert den Mechanismus zum Lesen des Inhalts für die Verarbeitung. Der generische Protokolladapter stellt die folgenden Sensoren zur Verfügung:
Die folgende Tabelle enthält eine Liste der allgemeinen Sensorattribute.
Sensorattribute
| Attributname | Typ | Verhalten |
|---|---|---|
| Sensortyp | String (Zeichenfolge) | Der vom Adapter zu verwendende Sensortyp. |
| Beschreibung (erforderlich) | String (Zeichenfolge) | Eine Textbeschreibung des Sensors.Dieser Wert wird nur vom Editor für Adapterkonfiguration verwendet. |
| Eindeutige ID (erforderlich) | String (Zeichenfolge) | Eine eindeutige Kennung für diese Komponente. Der Sensor verweist auf diese Zeichenfolge, um das zu verwendende Exemplar der Komponente zu identifizieren. |
| Maximale Blockung (erforderlich) | Integer (ganze Zahl) | Die maximale Anzahl der Zeilen, die der Sensor vor der Weiterleitung an das Extrahierungsprogramm zur Verarbeitung liest. Beim Sensortyp 'StaticParserSensor' gibt dieses Feld die maximale Anzahl an CBE-Objekten an, die vom statischen Parser vor der Weiterleitung an das Ausgabeprogramm zur Verarbeitung erstellt werden. |
| Puffer für Übereinstimmungswahrscheinlichkeit | Integer (ganze Zahl) | Die letzten n Byte einer Datei, die gespeichert und verwendet werden sollen, um zu ermitteln, ob seit dem letzten Lesevorgang Datensätze an die betreffende Datei angehängt worden sind. |
| Größe für Fußzeile | Integer (ganze Zahl) | Die n Byte einer Datei, die Variableninhalt enthalten. Der Fußzeilenabschnitt einer Datei wird nicht verwendet, wenn ermittelt wird, ob seit dem letzten Lesevorgang Datensätze an die betreffende Datei angehängt worden sind. |
Die nachstehende Tabelle enthält eine Liste der für die einzelnen Sensortypen jeweils spezifischen Eigenschaften. Die folgenden Eigenschaften sind dem Komponentencode bekannt und müssen genau wie in der Tabelle angegeben geschrieben werden, damit sie von der Komponente erkannt und verwendet werden können.
| Sensortyp | Eigenschaften | Anwendung |
|---|---|---|
| SingleFileSensor |
|
Wird beim Erstellen eines Adapters verwendet, um eine Syntaxanalyse einer Protokolldatei mit Regeln für reguläre Ausdrücke durchzuführen. |
| StaticParserSensor |
|
Wird beim Erstellen eines Adapters verwendet, um eine Syntaxanalyse einer Protokolldatei mit einer Java-Klasse für den statischen Parser durchzuführen. |
Das Extrahierungsprogramm verwendet eine Gruppe von Eingabezeilen, die vom Sensor zur Verfügung gestellt werden, und teilt diese in Nachrichtengrenzwerte auf.
Der generische Protokolladapter stellt die folgenden Extrahierungsprogramme zur Verfügung:
Die folgenden Eigenschaften werden als Teil der Konfiguration für das Extrahierungsprogramm zur Verfügung gestellt:
| Eigenschaft | Typ | Verhalten |
|---|---|---|
| Beschreibung | string (Zeichenfolge) | Eine Textbeschreibung des Extrahierungsprogramms. Dieser Wert wird nur vom Editor für Adapterkonfiguration verwendet. |
| Eindeutige ID | string (Zeichenfolge) | Eine eindeutige Kennung für diese Komponente. Das Extrahierungsprogramm verweist auf diese Zeichenfolge, um das zu verwendende Exemplar der Komponente zu identifizieren. |
| Mit Zeilenumbrüchen | boolean (Boolescher Wert) | Gibt an, ob sich die Nachrichten in der Protokolldatei über mehrere Zeilen erstrecken. |
| Zeilenumbrüche ersetzen | boolean (Boolescher Wert) | Ersetzt die Zeilenumbrüche in dieser Datei durch ein anderes Zeichenfolgesegment. Die Zeilenumbrüche werden ersetzt, bevor das Extrahierungsprogramm nach 'Startmuster' oder 'Endmuster' sucht. |
| Symbol für Zeilenumbruch | string (Zeichenfolge) | Das Zeichenfolgesegment, durch das die Zeilenumbrüche ersetzt werden sollen. Diese Eigenschaft wird nur dann verwendet, wenn die Eigenschaft 'Zeilenumbrüche ersetzen' aktiviert ist. |
| Startmuster aufnehmen | boolean (Boolescher Wert) | Gibt an, ob das Startmuster als Teil der Nachricht aufgenommen werden soll, die an die nächste Komponente weitergeleitet werden soll. Ist diese Eigenschaft inaktiviert, wird der übereinstimmende Abschnitt der Nachricht entfernt. |
| Startmuster | string (Zeichenfolge) oder regulärer Ausdruck | Das Zeichenfolgesegment, das den Anfang einer Nachricht angibt. Die Klasse 'RegularExpressionExtractor' kann immer verwendet werden. Handelt es sich bei Ihrem Startmuster jedoch um eine einfache Zeichenfolge, verursacht die Klasse 'SimpleExtractor' einen geringeren Systemaufwand. |
| Endmuster aufnehmen | boolean (Boolescher Wert) | Gibt an, ob das Endmuster als Teil der Nachricht aufgenommen werden soll, die an die nächste Komponente weitergeleitet werden soll. Ist diese Eigenschaft inaktiviert, wird der übereinstimmende Abschnitt der Nachricht entfernt. |
| Endmuster | string (Zeichenfolge) oder regulärer Ausdruck | Das Zeichenfolgesegment, das das Ende einer Nachricht angibt. Wird kein Endmuster angegeben, wird die Nachricht durch das nächste Startmuster begrenzt. |
Der Parser verwendet die vom Extrahierungsprogramm begrenzten Nachrichten und erstellt eine Gruppe von Zuordnungen zwischen Zeichenfolgewerten und einer Datenstruktur. Beim generischen Protokolladapter handelt es sich bei der Datenstruktur um Common Base Event 1.0.1.
Der generische Protokolladapter stellt die folgende Parserklasse zur Verfügung:
Der Parser wird in zwei Phasen ausgeführt:
Die beiden Ausführungsphasen ermöglichen Folgendes: Während der globalen Verarbeitungsphase kann die Nachricht mit Hilfe von Tokens durch eine Reihe von Attributwerten dargestellt werden. Während der Attributverarbeitungsphase kann anschließend auf diese Attributwerte nach Attributnamen oder Index verwiesen werden.
Die folgenden globalen Eigenschaften werden als Teil des Parsers angegeben:
| Eigenschaft | Typ | Verhalten |
|---|---|---|
| Beschreibung | string (Zeichenfolge) | Eine Textbeschreibung des Parsers. Dieser Wert wird nur vom Editor für Adapterkonfiguration verwendet. |
| Eindeutige ID | string (Zeichenfolge) | Eine eindeutige Kennung für diese Komponente. Der Parser verweist auf diese Zeichenfolge, um das zu verwendende Exemplar der Komponente zu identifizieren. |
| Separatortoken | string (Zeichenfolge) oder regulärer Ausdruck | Ein Token bzw. ein regulärer Ausdruck zur Beschreibung einer
Reihe von Tokens, der die Nachricht in Attribut/Wert-Paare aufteilt. Enthält beispielsweise jede neue Zeile Ihrer Protokolldatei ein Attribut und dessen Wert, könnten Sie den Separatortoken \n angeben. Der Vorteil, die Nachricht aufzuteilen, besteht darin, dass in der Attributverarbeitungsphase auf die Zeichenfolgesegmente verwiesen werden kann. |
| Bestimmungstoken | string (Zeichenfolge) oder regulärer Ausdruck | Ein Token bzw. ein regulärer Ausdruck zur Beschreibung einer Reihe von Tokens, der die vom Separatortoken erstellten Zeichenfolgesegmente in Attribut/Wert-Paare aufteilt. Wird beispielsweise jedes Attribut durch ein Gleichheitszeichen (=) vom Wert getrennt und der Wert des Bestimmungstokens ist = , kann in der Attributverarbeitungsphase auf das betreffende Attribut und dessen Wert verwiesen werden. Wird ein Separatortoken, aber kein Bestimmungstoken angegeben, wird die Nachricht in eine Liste von Attributwerten aufgeteilt, auf die in den Substitutionsregeln nach Index verwiesen werden kann. |
Die Attribute von Common Base Event haben jeweils die folgenden Eigenschaften:
| Eigenschaft | Typ | Verhalten |
|---|---|---|
| Vorherige Substitution für Übereinstimmung als Standardeinstellung verwenden | boolean (Boolescher Wert) | Gibt die aktuelle Gruppe von Substitutionsregeln für dieses Attribut eine positive Übereinstimmung zurück, muss der Übereinstimmungswert gespeichert werden, damit er zur Verarbeitung des nächsten Datensatzes als Standardwert verwendet werden kann, falls keine positive Übereinstimmung vorliegt. |
| Standardwert | String (Zeichenfolge) | Gibt keine der Substitutionsregeln für dieses Attribut eine positive Übereinstimmung zurück oder liegen für dieses Attribut keine Substitutionsregeln vor, wird diesem Attribut der hier angegebene Standardwert zugeordnet. Wird derselbe Wert für alle Datensätze eines bestimmten Attributs gewünscht, kann diese Eigenschaft verwendet werden, anstatt eine Standardsubstitutionsregel für das betreffende Attribut zu erstellen. Hierbei ist zu beachten, dass die Eigenschaft Vorherige Substitution für Übereinstimmung als Standardeinstellung verwenden Vorrang hat, falls ein gespeicherter Wert zur Verfügung steht. |
Substitutionsregeln werden als Teil der Attributverarbeitungsphase ausgeführt. Sie werden in der Reihenfolge von oben nach unten verarbeitet. Sobald eine Regel eine Übereinstimmung ergibt, werden für diese Eigenschaft keine weiteren Regeln ausgeführt. Wird keine Übereinstimmung gefunden, wird kein Wert in das Attribut gestellt, sofern nicht die Eigenschaft Vorherige Substitution für Übereinstimmung als Standardeinstellung verwenden oder Standardwert für das betreffende Attribut angegeben ist.
Substitutionsregeln enthalten die folgenden Eigenschaften:
| Eigenschaft | Typ | Verhalten |
|---|---|---|
| Übereinstimmung | Regulärer Ausdruck | Der reguläre Ausdruck, der den Wert ermittelt, der auf dieses Attribut angewendet werden soll, wenn eine Übereinstimmung im Bereich des Zeichenfolgesegments vorkommt, das von dieser Substitutionsregel verarbeitet wird. Wird kein regulärer Ausdruck zur Verfügung gestellt, wird die Regel als Übereinstimmung angesehen. |
| Positionen | name-value attribute pairs (Name/Wert-Attributpaare) |
Mit Positionen können Sie auf die Name/Wert-Attributpaare verweisen, die während der
globalen Verarbeitungsphase erstellt wurden.
Bei der Eigenschaft 'Übereinstimmung' können Sie den Separator hinzufügen, um anzugeben, welche regulären Ausdrücke auf welche Attributwerte angewendet werden sollen. Die Eigenschaft 'Substitution' kann auf diese Attributatome verweisen, indem $1, $2 etc. verwendet wird. |
| Substitution | string (Zeichenfolge) | Der Wert, der in das Attribut gestellt werden soll. Der Wert kann eine Zeichenfolge sein oder er kann auf den regulären Ausdruck in der Eigenschaft 'Übereinstimmung' verweisen. Mit Hilfe der Gruppierungen im regulären Ausdruck kann auf die Zeichenfolgesegmente verwiesen werden, die von der Eigenschaft 'Übereinstimmung' extrahiert werden. $1 gibt die erste Gruppierung an, $2 gibt die zweite Gruppierung an etc. |
| Integrierte Funktion verwenden | check box (Markierungsfeld) |
Ist das Markierungsfeld Integrierte Funktion verwenden für ein Attribut ausgewählt, wenn keine
der vorherigen Substitutionsregeln (sofern vorhanden) eine Übereinstimmung ergibt, generiert die Laufzeit des
generischen Protokolladapters unter Verwendung der eigenen internen Funktionen einen Wert für das
betreffende Attribut.
Dieses Feature wird nur für die folgenden CBE-Attribute unterstützt:
|
| Substitutionsklasse | string (Zeichenfolge) |
Gibt den Namen einer benutzerdefinierten Java-Klasse an, die eine angepasste Syntaxanalyselogik
für den Wert ausführen kann, der mit den Spezifikationen Positionen, Übereinstimmung und
Substitution der Regel übereinstimmt.
Stimmt die Substitutionsregel mit Daten in dem Datensatz überein, wird diese Klasse aufgerufen, und das
Ergebnis wird zum Erstellen des Common Base Event-Objekts verwendet.
Spezifikationen:
|
| Zeitformat | string (Zeichenfolge) | Dieses Feld gilt nur für Substitutionsregeln für das Element 'creationTime' und wird verwendet, um die Syntaxanalyse von Datums- und Zeitangaben zu vereinfachen. Einige Protokolldateien beispielsweise enthalten Zeitmarken, in denen die Monate nicht als numerischer Wert, sondern als Name angegeben werden. Dies erschwert die Erstellung von Substitutionsregeln zum Generieren des Zeichenfolgewerts im Format des XML-Schemadatentyps 'dateTime', der für das CBE-Element 'creationTime' erforderlich ist. In diesem Fall kann der Benutzer im Feld 'Zeitformat' ein einfaches Java-Datumsformat (SimpleDateFormat) in Form einer Zeichenfolge angeben, wie in der JavaDoc für java.text.SimpleDateFormat (java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html) dokumentiert. Der Wert, der mit den Spezifikationen 'Positionen', 'Übereinstimmung' und 'Substitution' der Regel übereinstimmt, wird auf Grundlage der Zeichenfolge des Zeitformats syntaktisch analysiert, und der sich daraus ergebende Wert wird verwendet, um den Wert für das CBE-Element 'creationTime' zu generieren. |
Das Formatierungsprogramm verwendet die vom Parser gelieferten Zuordnungen zwischen Attributen und ihren Werten und erstellt das korrekte Java-Objektexemplar. Die Laufzeit des Adapters enthält ein einziges Formatierungsprogramm, das Common Base Event-Objekte gemäß der Spezifikation von Common Base Event Version 1.0.1 erstellt.
Das Formatierungsprogramm enthält die folgenden Eigenschaften:
| Eigenschaft | Typ | Verhalten |
|---|---|---|
| Eindeutige ID | string (Zeichenfolge) | Eine eindeutige Kennung für diese Komponente. Das Formatierungsprogramm verweist auf diese Zeichenfolge, um das zu verwendende Exemplar der Komponente zu identifizieren. |
| Beschreibung | string (Zeichenfolge) | Eine Textbeschreibung des Formatierungsprogramms. Dieser Wert wird nur vom Editor für Adapterkonfiguration verwendet. |
Das Ausgabeprogramm exportiert die resultierenden Common Base Event-Datensätze, die vom Formatierungsprogramm geliefert werden. Ausgabeprogramme liefern den Mechanismus zum Speichern der Endausgaben des Kontexts zur Verfügung oder betten diesen Mechanismus ein. Der generische Hyades-Protokolladapter stellt die folgenden Ausgabeprogramme zur Verfügung:
Eigenschaften des Ausgabeprogramms:
| Eigenschaft | Typ | Verhalten |
|---|---|---|
| Eindeutige ID | string (Zeichenfolge) | Eine eindeutige Kennung für diese Komponente. Das Ausgabeprogramm verweist auf diese Zeichenfolge, um das zu verwendende Exemplar der Komponente zu identifizieren. |
| Beschreibung | string (Zeichenfolge) | Eine Textbeschreibung des Ausgabeprogramms. Dieser Wert wird nur vom Editor für Adapterkonfiguration verwendet. |
| Ausgabeprogrammtyp | enumeration (Aufzählung) | Der Typ des betreffenden Ausgabeprogramms. |
Ausgabeprogrammtypen und erforderliche Eigenschaften:
| Ausgabeprogrammtyp | Erforderliche Eigenschaften |
|---|---|
| StandardOutOutputter | Keine |
| SingleFileOutputter | directory (Verzeichnis), fileName (Dateiname) |
| LoggingAgentOutputter | agentName - Der Name, der dem Protokollierungsagenten beim Erstellen
zugeordnet wird. waitUntilLoggingTime (optional) - Die Zeitspanne, die das Ausgabeprogramm wartet, bis der Benutzer den Agenten zuordnet und dessen Überwachung startet, bevor das Programm Datensätze an den Agenten schreibt. Wird für diese Eigenschaft kein Wert angegeben, wartet das Ausgabeprogramm nicht bis zum Start der Überwachung des Agenten, bevor es Datensätze an ihn schreibt. |
| NotificationOutputter | resourceURL - URL des Benachrichtigungsziels (Notification Sink), das die Ereignisse empfängt. |
Verwandte Konzepte
Übersicht über generischen Hyades-Protokolladapter
Spezifikation des Common Base Event-Formats
Verwandte Tasks
Protokollparser erstellen
Regelbasierten Adapter erstellen
Statischen Adapter erstellen
Verwandte Verweise
Struktur der Adapterkonfigurationsdatei
Spezifikation des Common Base Event-Formats
Editor für Adapterkonfiguration
Grammatik von regulären Ausdrücken
(C) Copyright IBM Corporation 2000, 2004. Alle Rechte vorbehalten.