Anda sedang melihat dokumentasi Apigee Edge.
Buka
Dokumentasi Apigee X. info
Gejala
Variabel khusus yang dibuat menggunakan Kebijakan StatisticsCollector adalah tidak terlihat di bagian Custom Dimensions dalam Analytics Custom Reports 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 pedoman standar | Pengguna Edge Private Cloud dan Public Cloud |
Tidak ada traffic di Proxy API yang menerapkan kebijakan StatisticsCollector | Pengguna Edge Private Cloud dan Public Cloud |
Variabel kustom tidak dikirim ke Server Postgres | Pengguna Edge Private Cloud |
Klik tautan dalam tabel untuk melihat kemungkinan penyelesaian masalah tersebut.
Variabel Khusus tidak mematuhi panduan standar
Diagnosis
Jika nama variabel khusus yang digunakan di kebijakan StatisticsCollector tidak mematuhi pedoman standar (lihat Resolusi), maka masalah tersebut tidak akan muncul di Laporan Kustom.
Cuplikan kode di bawah ini menunjukkan bahwa nama variabel "product id" memiliki spasi, sehingga tidak akan muncul di bagian Dimensi Kustom dalam Laporan Kustom.
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="productID" ref="product id" type="string">999999</Statistic> </Statistics> </StatisticsCollector>
Resolusi
Nama variabel khusus yang digunakan dalam kebijakan StatisticsCollector dalam API proxy harus mematuhi pedoman berikut:
- Nama dapat mencakup [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, "pengguna" tidak diizinkan. Untuk informasi selengkapnya, lihat Kata Kunci SQL.
Jika masalah masih 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 lalu lintas di proxy API yang menerapkan StatisticsCollector variabel kustom tidak akan muncul dalam Laporan Kustom.
Resolusi
Melakukan beberapa panggilan ke proxy API yang mengimplementasikan StatisticsCollector lebih lanjut.
Tunggu beberapa saat dan periksa apakah variabel kustom muncul dalam 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 khusus dibuat di proxy API dan panggilan API dilakukan, variabel pertama kali disimpan dalam memori di Pemroses Pesan. Pesan Pemroses kemudian mengirim informasi tentang variabel baru itu ke ZooKeeper, kemudian mengirimkannya ke server Postgres untuk menambahkannya sebagai kolom di Postgres di skrip untuk menyiapkan database.
Terkadang, notifikasi dari ZooKeeper mungkin tidak mencapai server Postgres karena koneksi jaringan masalah performa. Karena kesalahan ini, variabel khusus mungkin tidak muncul di Laporan Kustom.
Untuk mengidentifikasi tempat variabel kustom tidak ada:
- Buat pohon ZooKeeper menggunakan perintah berikut:
/opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt
- Telusuri variabel kustom di output hierarki ZooKeeper.
- Jika variabel kustom ada di hierarki ZooKeeper, jalankan
perintah berikut untuk memeriksa apakah variabel kustom ditambahkan ke Postgres
{i>database<i}:
- Pada node Postgres, login ke PostgreSQL:
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
- Jalankan kueri SQL berikut:
select column_name, data_type, character_maximum_length from INFORMATION_SCHEMA.COLUMNS where table_name = 'orgname.envname.fact';
- Pada node Postgres, login ke PostgreSQL:
- Anda kemungkinan besar akan melihat bahwa kolom variabel kustom hilang di tabel fakta yang merupakan alasan agar tabel tersebut tidak muncul di Dimensi Kustom.
Resolusi
Solusi #1: Memulai ulang Server Postgres
- Mulai ulang Server Postgres untuk memaksanya membaca semua informasi yang relevan dengan
Analisis dari Zookeeper:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
Jika masalah berlanjut, terapkan Solusi #2.
Solusi #2: Aktifkan forceonboard properti
Aktifkan properti forceonboard menggunakan langkah-langkah di bawah:
- Buat file
/opt/apigee/customer/application/postgres-server.properties
di komputer server {i>Postgres<i}, jika belum ada. - Tambahkan baris berikut ke file ini:
conf_pg-agent_forceonboard=true
- Pastikan file ini dimiliki oleh Apigee dengan menggunakan perintah berikut:
chown apigee:apigee /opt/apigee/customer/application/postgres-server.properties
- Mulai ulang server Postgres:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- Jika Anda memiliki lebih dari satu server Postgres, ulangi langkah-langkah di atas pada semua Server postgres.
- Batalkan deployment dan deploy proxy API Anda yang menggunakan StatisticsCollector lebih lanjut.
- Jalankan panggilan API.
- Periksa apakah variabel kustom muncul di dimensi kustom di Kustom Laporkan.
Jika masalah berlanjut, hubungi Dukungan Apigee Edge.