Scrittura di dati di analisi in un file

Per impostazione predefinita, i dati analitici raccolti dal processore di messaggi vengono caricati su Qpid e Postgres per l'elaborazione. Puoi quindi visualizzare i dati di analisi nella UI di Edge.

In alternativa, puoi configurare il processore di messaggi per scrivere i dati di analisi su disco. Successivamente, puoi caricare questi dati nel tuo sistema di analisi per l'analisi. Ad esempio, potresti caricare inviare i dati a Google Cloud BigQuery. Puoi quindi sfruttare le potenti funzionalità di query e machine learning di BigQuery e TensorFlow per eseguire l'analisi dei dati.

Puoi anche scegliere di utilizzare entrambe le opzioni. Ciò significa che puoi caricare i dati di analisi Qpid/Postgres e di salvare i dati su disco.

Nomi e posizione dei file

Per impostazione predefinita, se abiliti la scrittura dei dati di analisi su file disco, i file vengono scritti in questa directory:

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

Edge crea una nuova directory in /tmp per i file di dati, a intervalli di un minuto. Il formato del nome della directory è:

org~env~yyyyMMddhhmmss

Ad esempio:

myorg~prod~20190909163500
myorg~prod~20190909163600

Ogni directory contiene un file .gz con i singoli file di dati per quell'intervallo. Il formato di il nome del file .gz è:

4DigitRandomHex_StartTime.StartTimePlusInterval_internalHostIP_hostUUID_writer_index.txt.gz

A intervalli regolari, Edge sposta la directory e il file .gz che contiene da /tmp a una delle seguenti directory, in base all'impostazione del parametro uploadToCloud Proprietà di configurazione del processore di messaggi:

  • uploadToCloud = false: file spostati in /opt/apigee/var/log/edge-message-processor/ax/staging
  • uploadToCloud = true: (opzione predefinita): i file vengono spostati in /opt/apigee/var/log/edge-message-processor/ax/failed

Decomprimi i dati dalla directory /staging o /failed per i file di dati di analisi.

Proprietà di configurazione

Utilizza le seguenti proprietà per configurare il processore di messaggi in modo che scriva i dati di analisi su disco. Tutte le seguenti proprietà sono facoltative:

Proprietà Descrizione
conf_analytics_analytics.saveToDisk

Imposta su true per configurare il processore di messaggi in modo che scriva i dati di analisi nei file disco.

Il valore predefinito è false.

conf_analytics_analytics.sendToQueue

Imposta su true per configurare l'elaboratore di messaggi per caricare i dati su Qpid/Postgres. Imposta su false per disabilitare la scrittura dei dati di analisi su Qpid/Postgres.

Il valore predefinito è true.

conf_analytics_analytics.baseDataDirectoryPath

Specifica il percorso di base in cui vengono scritti i file di dati di analisi.

Il valore predefinito è /opt/apigee/var/log/edge-message-processor/ax.

conf_analytics_analytics.allocatedDiskSpaceInMBytes

Specifica lo spazio su disco, in megabyte, allocato per i file di analisi.

Il valore predefinito è 3072. Se superi lo spazio su disco allocato per file di dati analitici, il processore di messaggi smette di salvare i dati analitici e scrive un messaggio di errore ai relativi file di log.

conf_analytics_analytics.uploadToCloud

Controlla la posizione finale dei file di dati e analisi.

  • false: file spostati in /opt/apigee/var/log/edge-message-processor/ax/staging
  • true (predefinito): i file vengono spostati in /opt/apigee/var/log/edge-message-processor/ax/failed

Nota: anche se questa proprietà si chiama uploadToCloud, non esistono dati dei carichi di lavoro nel cloud. Tutti i dati di analisi rimangono locali dell'installazione.

Per impostare queste proprietà:

  1. Apri il file message-processor.properties in un editor. Se il file non esiste, crealo:

    vi /opt/apigee/customer/application/message-processor.properties
  2. Imposta le proprietà come preferisci:

    # 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. Salva le modifiche.
  4. Assicurati che il file delle proprietà appartenga all'elemento "apigee" utente:

    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  5. Imposta il valore della proprietà consumer-type su ax per il axgroup-001 gruppo di dati e analisi:

    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

    Per impostazione predefinita, il nome del gruppo di Analytics è axgroup-001. Nel file di configurazione L'installazione perimetrale puoi impostare il nome del gruppo di analisi utilizzando la proprietà AXGROUP. Se non conosci con certezza i nomi del gruppo di analisi, esegui questo comando sul server di gestione nodo per visualizzarlo:

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

    Questo comando restituisce il nome del gruppo di analisi nel campo name.

  6. Riavvia il processore di messaggi:

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

    Dopo il riavvio, il processore di messaggi scrive i dati di analisi nei file di dati.

  7. Ripeti questi passaggi per tutti i processori di messaggi.