Angepasste Komponente erstellen

Der generische Protokolladapter bietet eine Anzahl vordefinierter Komponenten, die für die Erstellung von Adaptern zur Verarbeitung von Anwendungsprotokolldateien verwendet werden können. Wenn diese Komponenten nicht Ihren Anforderungen entsprechen, kann der generische Protokolladapter durch die Erstellung angepasster Komponenten erweitert werden, die im Kontext einer Adapterkonfigurationsdatei eingefügt werden können.

Führen Sie die folgenden Schritte aus, um eine angepasste Komponente zu erstellen:

Quellcode des generischen Protokolladapters extrahieren

Wenn Sie bei der Entwicklung Ihrer eigenen generischen Protokolladapterkomponente auf den generischen Protokolladapter verweisen wollen, entnehmen Sie das Plug-in-Projekt org.eclipse.hyades.logging.adapter aus dem Eclipse-CVS-Repository. Gehen Sie hierzu wie folgt vor:

Java-Klasse erstellen

Sie müssen eine Java-Klasse erstellen, die den Code für Ihre neue Komponente enthält:

  1. Erstellen Sie ein Plug-in-Projekt, in dem die neue Komponente enthalten sein soll.
  2. Erstellen Sie mit Ihrem Projekt eine Java-Klasse. Abhängig von der Rolle, die die neue Komponente übernehmen soll, sollte sie eine der folgenden im Paket org.eclipse.hyades.logging.adapter definierten Schnittstellen implementieren:
    IProcessUnit
    erweitert IComponent mit den Methoden zur Verarbeitung der Komponente. Zwischen den Komponenten werden Objektarrays übergeben. Die Hauptverarbeitungsmethode processEventItems erhält daher als Eingabe ein Objektarray und gibt auch ein Objektarray zurück. Alle Komponenten müssen IProcessUnit implementieren. IComponent enthält die Abruf- und Setter-Methoden für alle Komponenteneigenschaften, ein Aktualisierungsverfahren, das die Komponenteneigenschaften aus der Konfiguration abruft und Methoden, um die Komponente zu starten und zu stoppen.
    ISensor
    Erweitert IProcessUnit. Sollte bei der Implementierung einer Sensorkomponente verwendet werden. Die Methode getNext gibt das nächste Datenbündel aus der zurzeit geprüften Quelle zurück. Die Methode 'flush' löscht alle vom Sensor zwischengespeicherten Daten, die in der Quelle verblieben sind. Die Schnittstelle enthält außerdem eine Abruf- und Setter-Funktion für den Sensortyp gemäß der Definition in der Sensorschemadatei 'sensor.xsd'.
    IExtractor
    Erweitert IProcessUnit. Sollte bei der Implementierung einer Extrahierungskomponente verwendet werden. Da ein Sensor typischerweise Daten in Form von Zeichenfolgen an das Extrahierungsprogramm liefert und das Extrahierungsprogramm vollständige Nachrichten aus diesen Zeichenfolgen extrahiert, müssen Extrahierungskomponenten eine Methode processStrings implementieren, die ein Array von Zeichenfolgen als Eingabe nimmt und ein Array von Objekten des Typs MessageString zurückgibt. Die Klasse 'MessageString' ist auch im Paket 'org.eclipse.hyades.logging.adapter' definiert.
    IParser
    Erweitert IProcessUnit. Sollte bei der Implementierung einer Parserkomponente verwendet werden.
    IFormatter
    Erweitert IProcessUnit. Sollte bei der Implementierung einer Formatierungskomponente verwendet werden.
    IOutputter
    Erweitert IProcessUnit. Sollte bei der Implementierung einer Ausgabekomponente verwendet werden.

    Eine weitere Option zur Erstellung einer neuen Komponentenklasse besteht darin, die Standardimplementierungsklassen für IComponent, IProcessUnit, ISensor und IExtractor im Paket org.eclipse.hyades.logging.adapter.impl zu erweitern. Die jeweiligen Komponentenpaket des Projekts org.eclipse.hyades.logging.adapter enthalten entsprechende Beispiele.

  3. Nachdem Sie den Code fertig gestellt haben, speichern Sie die Änderungen.

Plug-in-Abhängigkeiten hinzufügen

Da Sie die Klassen des generischen Protokolladapters erweitern, müssen Sie das Plug-in des generischen Protokolladapters sowie seine Abhängigkeiten in Ihr Plug-in einschließen.

  1. Öffnen Sie die Datei plugin.xml und fügen Sie die folgenden Abhängigkeiten hinzu:
    org.eclipse.hyades.logging.adapter
    org.eclipse.hyades.logging.core

Plug-in als Erweiterung konfigurieren

So konfigurieren Sie Ihr Plug-in als Komponentenerweiterung des generischen Protokolladapters:

  1. Fügen Sie die folgende Erweiterung in die Datei plugin.xml ein:
    <extension 
       point="org.eclipse.hyades.logging.adapter.adapterComponent"> 
      <componentClassname 
            name="executable_class_name"> 
      </componentClassname> 
    </extension> 
    wobei 'executable_class_name' der Name der Java-Klasse ist, die Sie erstellt haben, um Ihre neue generische Protokolladapterkomponente zu implementieren.
  2. Speichern Sie die Datei plugin.xml.

 

Verwandte Aufgaben
Angepasste Komponente testen