Anda melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Gejala
Dasbor analisis (Performa Proxy, Performa Target, dan sebagainya ) tidak menampilkan data apa pun di UI Edge Baru. Semua dasbor menampilkan pesan berikut:
No traffic in the selected date range
Pesan error
Masalah ini tidak menyebabkan error yang dapat diamati.
Kemungkinan penyebab
Tabel berikut mencantumkan kemungkinan penyebab masalah ini:
| Penyebab | Untuk |
|---|---|
| Tidak Ada Traffic API untuk Lingkungan Organisasi | Pengguna Edge for Private Cloud |
| Data tersedia di Database Postgres, tetapi tidak ditampilkan di UI Edge Baru | Pengguna Edge for Private Cloud |
| Data Analytics tidak dikirim ke Database Postgres | Pengguna Edge for Private Cloud |
| Deployment Analytics yang Salah | Pengguna Edge for Private Cloud |
| UUID Server Analytics yang Tidak Valid | Pengguna Edge for Private Cloud |
Tidak Ada Traffic API untuk Lingkungan Organisasi
Diagnosis
- Periksa apakah ada traffic untuk Proxy API di lingkungan organisasi tertentu selama durasi tertentu yang ingin Anda lihat data analisisnya menggunakan salah satu metode berikut:
- Aktifkan rekaman aktivitas untuk API Anda yang saat ini digunakan oleh pengguna dan periksa apakah Anda dapat memperoleh permintaan apa pun dalam rekaman aktivitas.
- Lihat log akses NGINX
(
/opt/apigee/var/log/edge-router/nginx/logs/access.log)dan lihat apakah ada entri baru untuk Proxy API selama durasi tertentu. - Jika Anda mencatat informasi dari Proxy API ke server log seperti Syslog, Splunk, Loggly, dll., Anda dapat memeriksa apakah ada entri di server log ini untuk Proxy API selama durasi tertentu.
- Jika tidak ada traffic (tidak ada permintaan API) selama durasi tertentu, data analisis tidak tidak tersedia. Anda akan melihat "Tidak ada traffic dalam rentang tanggal yang dipilih" di dasbor analisis.
Resolusi
- Lakukan beberapa panggilan ke satu atau beberapa proxy API di lingkungan organisasi tertentu.
- Tunggu beberapa detik, lalu lihat dasbor analisis di tab Jam dan lihat apakah data muncul.
- Jika masalah berlanjut, lanjutkan ke Data tersedia di Database Postgres tetapi tidak ditampilkan di UI Edge Baru.
Data tersedia di Database Postgres, tetapi tidak ditampilkan di UI Edge Baru
Gejala
Pertama, tentukan ketersediaan data Analytics terbaru di database Postgres.
Untuk memeriksa apakah data Analytics terbaru tersedia di node Master Postgres node:
- Login ke setiap server Postgres dan jalankan perintah berikut untuk memvalidasi apakah Anda berada
di node Master Postgres:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
- Di node Master Postgres, login ke PostgreSQL:
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
- Periksa apakah tabel ada untuk org-env Anda menggunakan kueri SQL berikut di database Postgres
database:
\d analytics."orgname.envname.fact"
- Periksa apakah data terbaru tersedia di database Postgres menggunakan SQL berikut
kueri:
select max(client_received_start_timestamp) from analytics."orgname.envname.fact";
- Jika stempel waktu terbaru sangat lama (atau null), hal ini menunjukkan bahwa data tidak tersedia di database Postgres. Kemungkinan penyebab masalah ini adalah data tidak dikirim dari Server Qpid ke database Postgres. Lanjutkan ke Data Analytics tidak dikirim ke Database Postgres.
- Jika data terbaru tersedia di database Postgres di node Master ikuti langkah-langkah berikut untuk mendiagnosis alasan data tidak ditampilkan di UI Edge Baru.
Diagnosis
- Aktifkan Alat Developer
di browser Chrome Anda dan dapatkan API yang digunakan dari salah satu dasbor analisis menggunakan
langkah-langkah di bawah:
- Pilih tab Jaringan dari Alat Developer.
- Mulai Merekam.
- Muat ulang dasbor Analytics.
- Di panel kiri di Alat Developer, pilih baris yang memiliki "apiproxy?_optimized...".
- Di panel kanan di Alat Developer, pilih tab "Header" dan catat "URL Permintaan".
- Berikut contoh output dari Alat Developer:
Contoh output yang menampilkan API yang digunakan di dasbor Performa Proxy dari Tab Jaringan Alat Developer untuk dasbor Performa Proxy

- Jalankan panggilan API pengelolaan secara langsung dan periksa apakah Anda mendapatkan hasilnya. Berikut contoh panggilan API
panggilan untuk tab Hari di dasbor Performa Proxy:
curl -u username:password "http://management_server_IP_address:8080/v1/organizations/ org_name/environments/env_name/stats/apiproxy?limit=14400& select=sum(message_count),sum(is_error),avg(total_response_time), avg(target_response_time)&sort=DESC&sortby=sum(message_count),sum(is_error), avg(total_response_time),avg(target_response_time)&timeRange=08%2F9%2F2017+ 18:00:00~08%2F10%2F2017+18:00:00&timeUnit=hour&tsAscending=true"
- Jika Anda melihat respons yang berhasil tetapi tanpa data apa pun, hal ini menunjukkan bahwa Server Pengelolaan tidak dapat mengambil data dari server Postgres karena masalah konektivitas jaringan.
- Periksa apakah Anda dapat terhubung ke server Postgres dari Server Pengelolaan:
telnet Postgres_server_IP_address 5432
- Jika Anda tidak dapat terhubung ke server Postgres, periksa apakah ada batasan firewall pembatasan di port 5432.
- Jika ada batasan firewall, hal tersebut dapat menjadi penyebab Server Pengelolaan tidak dapat mengambil data dari server Postgres.
Resolusi
- Jika ada batasan firewall, hapus batasan tersebut agar Server Pengelolaan dapat berkomunikasi dengan server Postgres.
- Jika tidak ada batasan firewall, masalah ini mungkin disebabkan oleh gangguan jaringan.
- Jika ada gangguan jaringan di Server Pengelolaan, memulai ulang server tersebut mungkin dapat memperbaiki masalah ini.
- Mulai ulang semua Server Pengelolaan satu per satu menggunakan perintah di bawah:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- Periksa apakah Anda dapat melihat data analisis di UI Edge Baru.
Jika Anda masih tidak melihat data, hubungi Dukungan Apigee Edge.
Data Analytics tidak dikirim ke Database Postgres
Diagnosis
Jika data tidak dikirim dari Server Qpid ke Database Postgres seperti yang ditentukan di Data tersedia di Database Postgres, tetapi tidak ditampilkan di UI Edge Baru, lakukan langkah-langkah berikut:
- Periksa apakah setiap Server Qpid aktif dan berjalan dengan menjalankan perintah di bawah:
/opt/apigee/apigee-service/bin edge-qpid-server status
- Jika ada Server Qpid yang tidak aktif, mulai ulang server tersebut. Jika tidak, langsung ke langkah #5.
/opt/apigee/apigee-service/bin edge-qpid-server restart
- Tunggu beberapa saat, lalu periksa kembali apakah data terbaru tersedia di database Postgres.
- Login ke PostgreSQL:
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
- Jalankan kueri SQL di bawah untuk memeriksa apakah data terbaru tersedia:
select max(client_received_start_timestamp) from analytics."orgname.envname.fact";
- Login ke PostgreSQL:
- Jika data terbaru tersedia, lewati langkah-langkah berikut dan lanjutkan ke langkah terakhir di bagian Resolusi. Jika data terbaru tidak tersedia, lanjutkan dengan langkah-langkah berikut.
- Periksa apakah pesan dari antrean server Qpid dikirim ke database Postgres.
- Jalankan
qpid-stat -q commanddan periksa nilai kolom msgIn dan msgOut. - Berikut contoh output yang menunjukkan msgIn dan msgOut tidak sama. Hal ini menunjukkan
bahwa pesan tidak dikirim dari Server Qpid ke Database Postgres.

- Jalankan
- Jika ada ketidakcocokan di kolom msgIn dan msgOut, periksa log Server Qpid
Server
/opt/apigee/var/log/edge-qpid-server/system.logdan lihat apakah ada error. - Anda mungkin melihat pesan error seperti "Mungkin PG masih tidak aktif" atau
"FATAL: maaf, terlalu banyak klien" seperti yang ditunjukkan pada gambar di bawah:
2017-07-28 09:56:39,896 ax-q-axgroup001-persistpool-thread-3 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Found the exception to be retriable - . Error observed while trying to connect to jdbc:postgresql://PG_IP_address:5432/apigee Initial referenced UUID when execution started in this thread was a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d Probably PG is still down. PG set used - [a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d] 2017-07-28 09:56:39,896 ax-q-axgroup001-persistpool-thread-3 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Could not get JDBC Connection; nested exception is org.postgresql.util.PSQLException: FATAL: sorry, too many clients already 2017-07-28 09:56:53,617 pool-7-thread-1 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Found the exception to be retriable - . Error observed while trying to connect to jdbc:postgresql://PG_IP_address:5432/apigee Initial referenced UUID when execution started in this thread was a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d Probably PG is still down. PG set used - [a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d] 2017-07-28 09:56:53,617 pool-7-thread-1 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (FATAL: sorry, too many clients already)
Hal ini dapat terjadi jika Server Postgres menjalankan terlalu banyak kueri SQL atau CPU berjalan tinggi sehingga tidak dapat merespons Server Qpid.
Resolusi
- Mulai ulang Server Postgres dan PostgreSQL seperti yang ditunjukkan di bawah:
/opt/apigee/bin/apigee-service edge-postgres-server restart
/opt/apigee/bin/apigee-service apigee-postgresql restart
- Mulai ulang ini memastikan bahwa semua kueri SQL sebelumnya dihentikan dan akan memungkinkan koneksi baru ke database Postgres.
- Muat ulang dasbor Analytics dan periksa apakah data Analytics ditampilkan.
Jika masalah berlanjut, hubungi Dukungan Apigee Edge.
Deployment Analytics yang Salah
Diagnosis
- Dapatkan status deployment Analytics menggunakan panggilan API berikut:
curl -u user_email:password http://management_server_host:port /v1/organizations/orgname/environments/envname/provisioning/axstatus
- Periksa status server Qpid dan Postgres dari hasil panggilan API.
- Jika status server Qpid dan Postgres ditampilkan sebagai "SUCCESS", hal ini menunjukkan server Analytics terhubung dengan benar. Lanjutkan ke UUID Server Analytics yang Tidak Valid.
- Jika status server Qpid/Postgres ditampilkan sebagai "UNKNOWN" atau "FAILURE", hal ini
menunjukkan masalah pada server yang sesuai.
Misalnya, skenario berikut menunjukkan status server Postgres sebagai "UNKNOWN":

Hal ini dapat terjadi jika ada kegagalan selama orientasi Analytics. Kegagalan ini mencegah pesan dari Server Pengelolaan mencapai server Postgres.
Resolusi
Masalah ini biasanya dapat diselesaikan dengan memulai ulang server yang menampilkan "FAILURE" atau "UNKNOWN".
- Mulai ulang setiap server yang status koneksi Analytics-nya menunjukkan "FAILURE" atau "UNKNOWN"
menggunakan perintah berikut:
/opt/apigee/apigee-service/bin/apigee-service component restart
- Contoh:
- Jika Anda melihat masalah di Server Qpid, mulai ulang Server Qpid:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- Jika Anda melihat masalah di Server Postgres, mulai ulang node Server Postgres Master dan Slave:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- Jika Anda melihat masalah di Server Qpid, mulai ulang Server Qpid:
- Pada contoh di atas, pesan "UNKNOWN" ditampilkan untuk server Postgres, sehingga Anda perlu
memulai ulang server Postgres Master dan Slave:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
UUID Server Analytics yang Tidak Valid
Diagnosis
- Dapatkan konfigurasi Analytics menggunakan panggilan API berikut:
curl -u user_email:password http://management-server-host:port/v1/analytics/groups/ax
Berikut contoh output dari API di atas:
[ { "name" : "axgroup001", "properties" : { "consumer-type" : "ax" }, "scopes" : [ "myorg~prod", "myorg~test" ], "uuids" : { "aries-datastore" : [ ], "postgres-server" : [ "6777...2db14" ], "dw-server" : [ ], "qpid-server" : [ "774e...fb23", "29f3...8c11" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "774e...8c11" ], "datastores" : [ "6777...db14" ], "properties" : { } } ], "data-processors" : { } } ]
- Pastikan informasi berikut dalam output sudah benar:
- Nama org-env yang tercantum dalam elemen "scopes".
- UUID server Postgres dan server Qpid.
- Dapatkan UUID Server Postgres dengan menjalankan perintah berikut di setiap
node server Postgres:
curl 0:8084/v1/servers/self/uuid
- Dapatkan UUID Server Qpid dengan menjalankan perintah berikut di setiap node server Qpid
server:
curl 0:8083/v1/servers/self/uuid
- Dapatkan UUID Server Postgres dengan menjalankan perintah berikut di setiap
node server Postgres:
- Jika semua informasi sudah benar, lanjutkan ke Data Analytics tidak dikirim ke Database Postgres.
- Jika UUID server Postgres dan/atau Qpid salah, Server Pengelolaan mungkin merujuk ke UUID yang tidak valid.
Resolusi
Untuk menghapus UUID yang tidak valid dan menambahkan UUID server yang benar, hubungi Dukungan Apigee Edge.