Menulis data analisis ke file

Secara default, data analisis yang dikumpulkan oleh Pemroses Pesan diupload ke Qpid dan Postgres untuk diproses. Anda kemudian dapat melihat data analisis di UI Edge.

Atau, Anda dapat mengonfigurasi Pemroses Pesan untuk menulis data analisis ke disk. Kemudian, Anda dapat mengupload data tersebut ke sistem analisis Anda sendiri untuk dianalisis. Misalnya, Anda dapat mengunggah data ke Google Cloud BigQuery. Anda kemudian dapat memanfaatkan kueri dan machine learning kapabilitas yang ditawarkan BigQuery dan TensorFlow untuk melakukan analisis data sendiri.

Anda juga dapat memilih untuk menggunakan kedua opsi tersebut. Itu berarti Anda dapat mengunggah data analisis ke Qpid/Postgres dan juga menyimpan data ke disk.

Nama file dan lokasi

Secara default, jika Anda mengaktifkan penulisan data analisis ke file disk, file akan ditulis direktori berikut:

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

Edge membuat direktori baru dalam /tmp untuk file data tersebut, pada interval satu menit. Format nama direktori adalah:

org~env~yyyyMMddhhmmss

Contoh:

myorg~prod~20190909163500
myorg~prod~20190909163600

Setiap direktori berisi file .gz dengan file data individual untuk interval tersebut. Format nama file .gz adalah:

4DigitRandomHex_StartTime.StartTimePlusInterval_internalHostIP_hostUUID_writer_index.txt.gz

Secara berkala, Edge memindahkan direktori dan file .gz yang ada di dalamnya dari /tmp ke salah satu direktori berikut, berdasarkan setelan uploadToCloud Properti konfigurasi Pemroses Pesan:

  • uploadToCloud = false: file dipindahkan ke /opt/apigee/var/log/edge-message-processor/ax/staging
  • uploadToCloud = true: (default): file dipindahkan ke /opt/apigee/var/log/edge-message-processor/ax/failed

Ekstrak data dari direktori /staging atau /failed untuk mendapatkan file data analisis.

Properti konfigurasi

Gunakan properti berikut untuk mengonfigurasi Pemroses Pesan agar menulis data analisis ke disk. Semua properti ini bersifat opsional:

Properti Deskripsi
conf_analytics_analytics.saveToDisk

Setel ke true untuk mengonfigurasi Pemroses Pesan agar menulis data analisis ke file disk.

Nilai default-nya adalah false.

conf_analytics_analytics.sendToQueue

Setel ke true untuk mengonfigurasi Pemroses Pesan mengupload data ke Qpid/Postgres. Tetapkan ke false untuk menonaktifkan penulisan data analisis ke Qpid/Postgres.

Nilai default-nya adalah true.

conf_analytics_analytics.baseDataDirectoryPath

Menentukan jalur dasar tempat file data analisis ditulis.

Nilai defaultnya adalah /opt/apigee/var/log/edge-message-processor/ax.

conf_analytics_analytics.allocatedDiskSpaceInMBytes

Menentukan kapasitas disk, dalam megabyte, yang dialokasikan untuk file analisis.

Nilai default-nya adalah 3072. Jika Anda melebihi kapasitas {i>disk<i} yang dialokasikan untuk file data analisis, Pemroses Pesan berhenti menyimpan data analisis dan menulis pesan error ke file log-nya.

conf_analytics_analytics.uploadToCloud

Mengontrol lokasi akhir file analisis.

  • false: file dipindahkan ke /opt/apigee/var/log/edge-message-processor/ax/staging
  • true (default): file dipindahkan ke /opt/apigee/var/log/edge-message-processor/ax/failed

Catatan: Meskipun properti ini disebut uploadToCloud, tidak ada data diupload ke cloud. Semua data analisis tetap lokal untuk penginstalan Anda.

Untuk menetapkan properti ini:

  1. Buka file message-processor.properties di editor. Jika file tidak ada, buat file tersebut:

    vi /opt/apigee/customer/application/message-processor.properties
  2. Tetapkan properti sesuai keinginan:

    # 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. Simpan perubahan.
  4. Pastikan file properti dimiliki oleh "apigee" pengguna:

    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  5. Tetapkan nilai properti consumer-type ke ax untuk axgroup-001 grup analisis:

    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

    Secara default, nama grup analisis adalah axgroup-001. Di file konfigurasi untuk Penginstalan Edge, Anda dapat menetapkan nama grup analisis menggunakan properti AXGROUP. Jika Anda tidak yakin dengan nama grup analisis, jalankan perintah berikut di Server Pengelolaan {i>node<i} untuk menampilkannya:

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

    Perintah ini akan menampilkan nama grup analisis di kolom name.

  6. Mulai ulang Pemroses Pesan:

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

    Setelah dimulai ulang, Pemroses Pesan akan menulis data analisis ke file data.

  7. Ulangi langkah-langkah ini untuk semua Pemroses Pesan.