Dimensi Kustom tidak muncul saat beberapa grup sumbu telah dikonfigurasi

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

ini.

Gejala

Variabel khusus yang dibuat menggunakan Pembersih Statistik tidak terlihat pada Dimensi Kustom di Laporan Kustom Analytics di bagian UI Edge.

Pesan Error

Log sistem server edge-postgres akan mengalami error berikut setelah dimulai ulang untuk setiap kombinasi organisasi/lingkungan yang jalurnya tidak ada:

KeeperErrorCode = NoNode for
/organizations/<ORG>/environments/<ENV>/properties
2018-03-29 16:14:48,980 pool-10-thread-2 ERROR ZOOKEEPER -
ZooKeeperServiceImpl.getData() : Could not get data for path:
/organizations//environments//properties, reason:
KeeperErrorCode = NoNode for
/organizations//environments//properties

Kemungkinan Penyebab

Penyebab Deskripsi Petunjuk Pemecahan Masalah yang Berlaku Untuk
Jalur properti Zookeeper tidak ada untuk kombinasi organisasi dan lingkungan. Ketika jalur ZooKeeper /organizations//environments//properties tidak ada, dimensi kustom tidak dapat dibuat. Pengguna Edge Private Cloud

Penyebab: Jalur properti ZooKeeper tidak ada untuk kombinasi organisasi dan lingkungan

Diagnosis

Analytics diaktifkan untuk kombinasi organisasi-lingkungan melalui Aktifkan Analytics API, yang mengisi /organizations//environments//properties di pohon {i> ZooKeeper<i}. Jika API ini gagal, komponen edge-postgres-server tidak dapat membuat dimensi kustom, dan error berikut akan muncul di system.log-nya:

KeeperErrorCode = NoNode for
/organizations/example/environments/prod/properties
2018-03-29 16:14:48,980 pool-10-thread-2 ERROR ZOOKEEPER -
ZooKeeperServiceImpl.getData() : Could not get data for path:
/organizations/example/environments/prod/properties, reason:
KeeperErrorCode = NoNode for
/organizations/digi/environments/sandbox/properties

Biasanya hal ini terjadi ketika sebuah organisasi diorientasikan pada saat ada lebih dari satu ada grup analisis yang menggunakan UUID server postgres yang sama. Untuk memeriksa jumlah analisis grup tersedia, jalankan panggilan API berikut:

curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"

Jika API ini menampilkan beberapa grup, kemungkinan besar itu adalah penyebab masalah. Dalam contoh berikut, perhatikan bahwa ada dua grup, yang hanya dibedakan dengan tanda hubung: axgroup-001 dan axgroup001

[ {
  "name" : "axgroup-001",
  "properties" : {
  },
  "scopes" : [ "VALIDATE~test" ],
  "uuids" : {
    "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ],
    "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ]
  },
  "consumer-groups" : [ {
    "name" : "consumer-group-001",
    "consumers" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ],
    "datastores" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ],
    "properties" : {
    }
  } ],
  "data-processors" : {
  }
}, {
  "name" : "axgroup001",
  "properties" : {
  },
  "scopes" : [ "example~prod" ],
  "uuids" : {
    "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ],
    "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ]
  },
  "consumer-groups" : [ {
    "name" : "consumer-group-001",
    "consumers" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ],
    "datastores" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ],
    "properties" : {
    }
  } ],
  "data-processors" : {
  }

Secara khusus, masalah ini terjadi jika UUID server postgres dikonfigurasi untuk setiap {i>axgroup<i} adalah sama. Cara cepat untuk menentukannya adalah dengan menjalankan perintah berikut:

curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"|grep -B7 "postgres-server"

Contoh {i>output<i} berikut ini dengan cepat membandingkan UUID server postgres untuk menentukan keduanya sama:

{  "name" : "axgroup-001",  "properties" : {  },  "scopes" : [ "VALIDATE~test" ],
"uuids" : {    "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ],
"postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ]--
"name" : "axgroup001",  "properties" : {  },  "scopes" : [ "myorg~prod" ],
"uuids" : {    "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ],
"aries-datastore" : [ ],    "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ],

Resolusi

Kumpulan server PostgreSQL yang sama tidak dapat ditetapkan ke dua axgroup. Cara tercepat untuk menyelesaikan masalah adalah dengan menghapus informasi server postgres dari satu {i>axgroup<i} dan menetapkan semua cakupan (organisasi, kombinasi lingkungan) ke grup lain. Untuk melakukannya: ikuti langkah-langkah berikut:

  1. Hapus komponen server postgres dari salah satu dari dua axgroup menggunakan petunjuk pada Menambahkan dan menghapus komponen analisis di grup analisis. Jika Anda hanya menemukan masalah pada cakupan non-produksi, pilih grup sumbu yang TIDAK memiliki cakupan produksi untuk latihan ini. Jika tidak, pilih {i>axgroup<i} dengan dengan jumlah cakupan terkecil.
  2. Hapus semua cakupan dari axgroup yang tidak lagi memiliki server postgres, dan yang yang mengalami masalah dimensi kustom dari grup sumbunya. Asumsi axgroup-001 dari contoh di atas adalah grup yang ingin Anda gunakan, Anda akan harus menggunakan hal berikut untuk menghapus cakupan untuk organisasi myorg, dan lingkungan prod:
    curl -u username:password -X DELETE 'http://management-server-host:8080/v1/analytics/groups/ax/axgroup001/scopes?org=myorg&env=prod'
    
  3. Mengaktifkan analisis menggunakan Aktifkan Analytics API.
  4. Memulai ulang komponen edge-postgres-server pada node master postgres, dan semua komponen edge-qpid-server yang mungkin telah Anda instal, menggunakan perintah berikut:
     /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
    
     /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    
  5. Pastikan error yang diberikan di bagian Pesan Error di atas tidak lagi terjadi di file log server Postgres /opt/apigee/var/log/edge-postgres-server/logs/system.log.
  6. Konfirmasi apakah dimensi kustom muncul di UI Edge.

Jika masalah berlanjut, buka Harus Mengumpulkan Informasi Diagnostik.

Harus Mengumpulkan Informasi Diagnostik

Jika masalah berlanjut bahkan setelah mengikuti instruksi sebelumnya, kumpulkan informasi diagnostik berikut. Hubungi dan bagikan ke Dukungan Apigee Edge:

  1. Server edge-postgres /opt/apigee/var/log/edge-postgres-server/logs/system.log sejak dimulai ulang terakhir.
  2. Output panggilan Management API berikut:
    curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"
    
  3. Output pohon ZooKeeper diperoleh menggunakan perintah berikut:
    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt