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 aufrufen.

Alternativ können Sie den Message Processor so konfigurieren, dass Analysedaten auf das Laufwerk geschrieben werden. Diese Daten können Sie dann zur Analyse in Ihr eigenes Analysesystem hochladen. Sie können die Daten beispielsweise in Google Cloud BigQuery hochladen. Anschließend können Sie die leistungsstarken Abfrage- und Machine-Learning-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 Laufwerkdateien aktivieren, werden die Dateien standardmäßig in das folgende Verzeichnis geschrieben:

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

Edge erstellt in einminütigen Intervallen ein neues Verzeichnis unter /tmp für die Datendateien. Das Format des Verzeichnisnamens ist:

org~env~yyyyMMddhhmmss

Beispiel:

myorg~prod~20190909163500
myorg~prod~20190909163600

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

4DigitRandomHex_StartTime.StartTimePlusInterval_internalHostIP_hostUUID_writer_index.txt.gz

In regelmäßigen Abständen verschiebt Edge das Verzeichnis und die darin enthaltene GZ-Datei von /tmp in eines der folgenden Verzeichnisse, je nach Einstellung der Message Processor-Konfigurationseigenschaft uploadToCloud:

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

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

Konfigurationsattribute

Verwenden Sie die folgenden Attribute, um den Message Processor so zu konfigurieren, dass Analysedaten auf das Laufwerk geschrieben werden. Alle diese Attribute sind optional:

Attribut Beschreibung
conf_analytics_analytics.saveToDisk

Legen Sie true fest, um den Message Processor so zu konfigurieren, dass Analysedaten in Laufwerksdateien geschrieben werden.

Der Standardwert ist false.

conf_analytics_analytics.sendToQueue

Legen Sie true fest, um den Message Processor so zu konfigurieren, dass die Daten in Qpid/Postgres hochgeladen werden. 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 Speicherplatz in Megabyte an, der für Analysedateien zugewiesen ist.

Der Standardwert ist 3072. Wenn Sie den zugewiesenen Speicherplatz für die Analysedatendateien überschreiten, speichert der Message Processor keine Analysedaten mehr und schreibt eine Fehlermeldung in seine Logdateien.

conf_analytics_analytics.uploadToCloud

Steuert den endgültigen Speicherort der Analysedateien.

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

Hinweis: Obwohl dieses Attribut uploadToCloud heißt, werden keine Daten in die Cloud hochgeladen. Alle Analysedaten bleiben lokal in Ihrer Installation gespeichert.

So legen Sie diese Attribute 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 Attribute nach Bedarf 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 Nutzer „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 für eine Edge-Installation können Sie den Namen der Analysegruppe mit dem Attribut AXGROUP festlegen. Wenn Sie sich nicht sicher sind, wie die Analysegruppe heißt, führen Sie den folgenden Befehl auf dem Management Server-Knoten aus, um den Namen anzuzeigen:

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

    Dieser Befehl gibt den Namen der Analysegruppe 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 Processors.