Menulis data analisis ke file

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

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

Anda juga dapat memilih untuk menggunakan kedua opsi tersebut. Artinya, Anda dapat mengupload data analisis ke Qpid/Postgres dan juga menyimpan data ke disk.

Nama dan lokasi file

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

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

Edge membuat direktori baru di bagian /tmp untuk file data, dengan 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 properti konfigurasi Message Processor uploadToCloud:

  • 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

Tetapkan 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 disk yang dialokasikan untuk file data analisis, Pemroses Pesan akan 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 yang diupload ke cloud. Semua data analisis akan disimpan secara 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 pengguna "apigee":

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

    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. Dalam 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 pada node Server Pengelolaan 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 mulai ulang, Pemroses Pesan akan menulis data analisis ke file data.

  7. Ulangi langkah ini untuk semua Pemroses Pesan.