Analysedaten in eine Datei schreiben

Standardmäßig werden die vom Message Processor erfassten Analysedaten zur Verarbeitung in Qpid und Postgres hochgeladen. Anschließend können Sie die Analysedaten in der Edge-Benutzeroberfläche ansehen.

Alternativ können Sie den Message Processor so konfigurieren, dass Analysedaten auf die Festplatte geschrieben werden. Anschließend können Sie diese Daten zur Analyse in Ihr eigenes Analysesystem hochladen. Sie könnten die Daten beispielsweise in Google Cloud BigQuery hochladen. Sie können dann die leistungsstarken Abfrage- und ML-Funktionen von BigQuery und TensorFlow nutzen, um Ihre eigene Datenanalyse durchzuführen.

Sie können auch beide Optionen verwenden. Das bedeutet, dass Sie die Analysedaten in Qpid/Postgres hochladen und auch auf dem Laufwerk speichern können.

Dateinamen und Speicherort

Wenn Sie das Schreiben von Analysedaten in Datenträgerdateien aktivieren, werden die Dateien standardmäßig in das folgende Verzeichnis geschrieben:

/opt/apigee/var/log/edge-message-processor/ax/tmp

Edge erstellt in Intervallen von einer Minute ein neues Verzeichnis unter /tmp für die Datendateien. Das Format des Verzeichnisnamens lautet:

org~env~yyyyMMddhhmmss

Beispiel:

myorg~prod~20190909163500
myorg~prod~20190909163600

Jedes Verzeichnis enthält eine GZ-Datei mit den einzelnen Datendateien für das jeweilige Intervall. Das Format des GZ-Dateinamens lautet:

4DigitRandomHex_StartTime.StartTimePlusInterval_internalHostIP_hostUUID_writer_index.txt.gz

Edge verschiebt in regelmäßigen Intervallen das Verzeichnis und die darin enthaltene GZ-Datei aus /tmp in eines der folgenden Verzeichnisse, je nach der Einstellung des Message Processor-Konfigurationsattributs uploadToCloud:

  • uploadToCloud = false: Dateien in „/opt/apigee/var/log/edge-message-processor/ax/staging“ verschoben
  • uploadToCloud = true: (Standard): Dateien werden zu /opt/apigee/var/log/edge-message-processor/ax/failed verschoben

Entpacken Sie die Daten entweder aus dem Verzeichnis /staging oder /failed, um die Analysedatendateien zu erhalten.

Konfigurationsattribute

Verwenden Sie die folgenden Eigenschaften, um den Message Processor zum Schreiben von Analysedaten auf die Festplatte zu konfigurieren. Alle diese Attribute sind optional:

Property Beschreibung
conf_analytics_analytics.saveToDisk

Legen Sie true fest, um den Message Processor zum Schreiben von Analysedaten in Datenträgerdateien zu konfigurieren.

Der Standardwert ist false.

conf_analytics_analytics.sendToQueue

Legen Sie diese Einstellung auf true fest, um den Message Processor zu konfigurieren, der die Daten in Qpid/Postgres hochlädt. Legen Sie false fest, um das Schreiben von Analysedaten in Qpid/Postgres zu deaktivieren.

Der Standardwert ist true.

conf_analytics_analytics.baseDataDirectoryPath

Gibt den Basispfad an, in den die Analysedatendateien geschrieben werden.

Der Standardwert ist /opt/apigee/var/log/edge-message-processor/ax..

conf_analytics_analytics.allocatedDiskSpaceInMBytes

Gibt den für Analysedateien zugewiesenen Festplattenspeicher in Megabyte an.

Der Standardwert ist 3072. Wenn Sie den zugewiesenen Speicherplatz für die Analysedatendateien überschreiten, stoppt der Message Processor das Speichern der Analysedaten und schreibt eine Fehlermeldung in seine Protokolldateien.

conf_analytics_analytics.uploadToCloud

Steuert den endgültigen Speicherort der Analysedateien.

  • false: Dateien in /opt/apigee/var/log/edge-message-processor/ax/staging verschoben
  • true (Standard): Dateien werden zu /opt/apigee/var/log/edge-message-processor/ax/failed verschoben

Hinweis: Auch wenn dieses Attribut uploadToCloud heißt, werden keine Daten in die Cloud hochgeladen. Alle Analysedaten bleiben lokal für Ihre Installation.

So legen Sie diese Eigenschaften fest:

  1. Öffnen Sie die Datei message-processor.properties in einem Editor. Wenn die Datei nicht vorhanden ist, erstellen Sie sie:

    vi /opt/apigee/customer/application/message-processor.properties
  2. Legen Sie die gewünschten Eigenschaften fest:

    # Enable writing analytics data to disk.
    conf_analytics_analytics.saveToDisk=true
    # Disable writing analytics data to Qpid/Postgres.
    conf_analytics_analytics.sendToQueue=false
    
    # Specify base directory for analytics data files.
    conf_analytics_analytics.baseDataDirectoryPath=/opt/apigee/var/smg
    
    # Set the disk space available for analytics files.
    conf_analytics_analytics.allocatedDiskSpaceInMBytes=3072
    # Move final analytics data to files to the /staging directory.
    conf_analytics_analytics.uploadToCloud=false
  3. Speichern Sie die Änderungen.
  4. Achten Sie darauf, dass die Attributdatei dem Benutzer „apigee“ gehört:

    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  5. Legen Sie den Wert des Attributs consumer-type für die Analysegruppe axgroup-001 auf ax fest:

    curl -X POST -H "Content-Type:application/json" \
    "http://ms-ip:8080/v1/analytics/groups/ax/axgroup-001/properties?propName=consumer-type&propValue=ax" \
    -u sysAdminEmail:sysAdminPWord

    Standardmäßig lautet der Name der Analysegruppe axgroup-001. In der Konfigurationsdatei einer Edge-Installation können Sie den Namen der Analysegruppe mit dem Attribut AXGROUP festlegen. Wenn Sie sich bezüglich der Namen der Analysegruppe nicht sicher sind, führen Sie den folgenden Befehl auf dem Verwaltungsserverknoten aus, um sie anzuzeigen:

    apigee-adminapi.sh analytics groups list \
      --admin sysAdminEmail --pwd sysAdminPword --host localhost

    Dieser Befehl gibt den Analysegruppennamen im Feld name zurück.

  6. Starten Sie den Message Processor neu:

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

    Nach dem Neustart schreibt der Message Processor Analysedaten in Datendateien.

  7. Wiederholen Sie diese Schritte für alle Message Processor.