Variabel khusus tidak terlihat oleh laporan kustom Analytics

Anda melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Gejala

Variabel kustom yang dibuat menggunakan kebijakan StatisticsCollector tidak terlihat di bagian Dimensi Kustom di Laporan Kustom Analytics di UI Edge.

Pesan error

Tidak ada error yang diamati.

Kemungkinan penyebab

Tabel berikut mencantumkan kemungkinan penyebab masalah ini:

Penyebab Untuk
Variabel Kustom tidak mematuhi panduan standar Pengguna Cloud Pribadi dan Publik Edge
Tidak ada traffic di Proxy API yang menerapkan kebijakan StatisticsCollector Pengguna Cloud Pribadi dan Publik Edge
Variabel kustom tidak dikirim ke Server Postgres Pengguna Cloud Pribadi Edge

Klik link di tabel untuk melihat kemungkinan resolusi penyebab tersebut.

Variabel Kustom tidak mematuhi panduan standar

Diagnosis

Jika nama variabel kustom yang digunakan dalam kebijakan StatisticsCollector tidak mematuhi panduan standar (lihat Resolusi), nama tersebut tidak akan muncul di Laporan Kustom.

Cuplikan kode di bawah menunjukkan bahwa nama variabel "product id" memiliki spasi, sehingga tidak akan muncul di bagian Dimensi Kustom di Laporan Kustom.

  <StatisticsCollector name="publishPurchaseDetails">
    <Statistics>
      <Statistic name="productID" ref="product id" type="string">999999</Statistic>
    </Statistics>
  </StatisticsCollector>

Resolusi

Nama variabel kustom yang digunakan dalam kebijakan StatisticsCollector dalam proxy API harus mematuhi panduan berikut:

  • Nama dapat menyertakan [a-z][0-9] dan '_'.
  • Nama tidak boleh menyertakan spasi. Misalnya, dalam contoh kode yang ditampilkan di atas, nama variabel harus diubah menjadi "product_id".
  • Huruf besar atau kecil tidak dibedakan.
  • Kata kunci yang dicadangkan yang tercantum dalam tabel di link berikut tidak diizinkan. Misalnya, "user" tidak diizinkan. Untuk mengetahui informasi selengkapnya, lihat Kata Kunci SQL.

Jika masalah berlanjut, lanjutkan ke Tidak ada traffic di Proxy API yang menerapkan kebijakan StatisticsCollector.

Tidak ada traffic di Proxy API yang menerapkan kebijakan StatisticsCollector

Diagnosis

Jika tidak ada traffic di proxy API yang menerapkan kebijakan StatisticsCollector, variabel kustom tidak akan muncul di Laporan Kustom.

Resolusi

Buat beberapa panggilan ke proxy API yang menerapkan kebijakan StatisticsCollector.

Tunggu beberapa saat dan periksa apakah variabel kustom muncul di dimensi kustom di Laporan Kustom.

Jika masalah berlanjut, lanjutkan ke Variabel Kustom tidak dikirim ke Server Postgres.

Variabel kustom tidak dikirim ke Server Postgres

Diagnosis

Saat variabel kustom dibuat di proxy API dan panggilan API dilakukan, variabel tersebut pertama-tama akan disimpan dalam memori di Message Processor. Message Processor kemudian mengirimkan informasi tentang variabel baru ke ZooKeeper, yang kemudian mengirimkannya ke server Postgres untuk menambahkannya sebagai kolom di database Postgres.

Terkadang, notifikasi dari ZooKeeper mungkin tidak mencapai server Postgres karena masalah jaringan. Karena error ini, variabel kustom mungkin tidak muncul di Laporan Kustom.

Untuk mengidentifikasi tempat variabel kustom tidak ada:

  1. Buat pohon ZooKeeper menggunakan perintah berikut:
    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt
  2. Telusuri variabel kustom di output pohon ZooKeeper.
  3. Jika variabel kustom ada di pohon ZooKeeper, jalankan perintah berikut untuk memeriksa apakah variabel kustom ditambahkan ke database Postgres:
    1. Di node Postgres, login ke PostgreSQL:
      psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
    2. Jalankan kueri SQL berikut:
      select column_name, data_type, character_maximum_length from INFORMATION_SCHEMA.COLUMNS
        where table_name = 'orgname.envname.fact';
  4. Kemungkinan besar Anda akan melihat bahwa kolom variabel kustom tidak ada di tabel fakta, yang merupakan alasan mengapa kolom tersebut tidak muncul di Dimensi Kustom.

Resolusi

Solusi #1: Memulai Ulang Server Postgres

  1. Mulai ulang Server Postgres untuk memaksanya membaca semua informasi yang relevan dengan Analytics dari Zookeeper:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

    Jika masalah berlanjut, terapkan Solusi #2.

Solusi #2: Mengaktifkan properti forceonboard

Aktifkan properti forceonboard menggunakan langkah-langkah di bawah:

  1. Buat file /opt/apigee/customer/application/postgres-server.properties di mesin server Postgres, jika belum ada.
  2. Tambahkan baris berikut ke file ini:
    conf_pg-agent_forceonboard=true
  3. Pastikan file ini dimiliki oleh Apigee dengan menggunakan perintah berikut:
    chown apigee:apigee /opt/apigee/customer/application/postgres-server.properties
  4. Mulai ulang server Postgres:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  5. Jika Anda memiliki lebih dari satu server Postgres, ulangi langkah-langkah di atas di semua server Postgres.
  6. Batalkan deployment dan deploy proxy API yang menggunakan kebijakan StatisticsCollector policy.
  7. Jalankan panggilan API.
  8. Periksa apakah variabel kustom muncul di dimensi kustom di Laporan Kustom.

Jika masalah berlanjut, hubungi Dukungan Apigee Edge.