Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Belirti
StatisticsCollector politikası kullanılarak oluşturulan özel değişken, Edge kullanıcı arayüzündeki Analytics özel raporlarındaki Özel Boyutlar altında görünmüyor.
Hata mesajları
Hata gözlemlenmiyor.
Olası nedenler
Aşağıdaki tabloda bu sorunun olası nedenleri listelenmiştir:
| Neden | Şunun için: |
|---|---|
| Özelleştirilebilen değişkenin standart yönergelere uymaması | Edge Private ve Public Cloud kullanıcıları |
| StatisticsCollector politikasını uygulayan API Proxy'de trafik yok | Edge Private ve Public Cloud kullanıcıları |
| Özelleştirilebilen değişken, Postgres sunucusuna aktarılmıyor | Edge Private Cloud kullanıcıları |
Bu nedene yönelik olası çözümleri görmek için tablodaki bir bağlantıyı tıklayın.
Özelleştirilebilen değişkenin standart yönergelere uymaması
Teşhis
StatisticsCollector politikasında kullanılan özel değişken adı standart yönergelere uymuyorsa ( Çözüm bölümüne bakın) Özel Raporlar'da görünmez.
Aşağıdaki kod snippet'inde "product id" değişken adında boşluk olduğu gösteriliyor. Bu nedenle, özel rapordaki özel boyut altında görünmeyecek.
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="productID" ref="product id" type="string">999999</Statistic> </Statistics> </StatisticsCollector>
Çözünürlük
API proxy'sindeki StatisticsCollector politikasında kullanılan özel değişken adları aşağıdaki yönergelere uymalıdır:
- Adlar [a-z][0-9] ve '_' içerebilir.
- Adlar boşluk içeremez. Örneğin, yukarıda gösterilen kod örneğinde değişken adı "product_id" olarak değiştirilmelidir.
- Büyük/küçük harf durumu dikkate alınmaz.
- Aşağıdaki bağlantıdaki tabloda listelenen ayrılmış anahtar kelimelere izin verilmez. Örneğin, "user" (kullanıcı) kelimesine izin verilmez. Daha fazla bilgi için SQL Anahtar Kelimeleri bölümüne bakın.
Sorun devam ederse İstatistikToplayıcı politikasını uygulayan API proxy'sinde trafik yok bölümüne gidin.
StatisticsCollector politikasını uygulayan API proxy'sinde trafik yok
Teşhis
StatisticsCollector politikasını uygulayan API proxy'sinde trafik yoksa özel değişken, özel raporlarda görünmez.
Çözünürlük
StatisticsCollector politikasını uygulayan API proxy'sine bazı çağrılar yapın.
Bir süre bekleyin ve özel değişkenlerin, Özel Rapordaki özel boyutlarda görünüp görünmediğini kontrol edin.
Sorun devam ederse Özel değişken Postgres sunucusuna aktarılmıyor bölümüne gidin.
Özelleştirilebilen değişken, Postgres sunucusuna aktarılmıyor
Teşhis
API proxy'sinde özel bir değişken oluşturulup API çağrıları yapıldığında değişken önce Mesaj İşleyici'de bellekte depolanır. Message Processor daha sonra yeni değişkenle ilgili bilgileri ZooKeeper'a gönderir. ZooKeeper da bu bilgileri Postgres veritabanına sütun olarak eklemek üzere Postgres sunucusuna gönderir.
Zaman zaman, ağ sorunları nedeniyle ZooKeeper'dan gelen bildirim Postgres sunucusuna ulaşamayabilir. Bu hata nedeniyle, özelleştirilebilen değişken Özel Raporda görünmeyebilir.
Özel değişkenin nerede eksik olduğunu belirlemek için:
- Aşağıdaki komutu kullanarak ZooKeeper ağacını oluşturun:
/opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt
- ZooKeeper ağacı çıkışında özel değişkeni arayın.
- Özelleştirilebilen değişken ZooKeeper ağacında varsa özelleştirilebilen değişkenin Postgres veritabanına eklenip eklenmediğini kontrol etmek için aşağıdaki komutları çalıştırın:
- Postgres düğümünde PostgreSQL'e giriş yapın:
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
- Aşağıdaki SQL sorgusunu çalıştırın:
select column_name, data_type, character_maximum_length from INFORMATION_SCHEMA.COLUMNS where table_name = 'orgname.envname.fact';
- Postgres düğümünde PostgreSQL'e giriş yapın:
- Özel değişken sütununun, özel boyutlarda görünmemesinin nedeni olan olgu tablosunda eksik olduğunu görmeniz çok olasıdır.
Çözünürlük
1. çözüm: Postgres sunucusunu yeniden başlatın
- Postgres sunucusunu yeniden başlatarak Zookeeper'dan Analytics ile ilgili tüm bilgileri okumaya zorlayın:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
Sorun devam ederse 2. çözümü uygulayın.
2. çözüm: Mülk için zorunlu katılımı etkinleştirin
Aşağıdaki adımları uygulayarak forceonboard özelliğini etkinleştirin:
- Henüz yoksa Postgres sunucu makinesinde
/opt/apigee/customer/application/postgres-server.propertiesdosyası oluşturun. - Bu dosyaya aşağıdaki satırı ekleyin:
conf_pg-agent_forceonboard=true
- Aşağıdaki komutu kullanarak bu dosyanın Apigee'ye ait olduğundan emin olun:
chown apigee:apigee /opt/apigee/customer/application/postgres-server.properties
- Postgres sunucusunu yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- Birden fazla Postgres sunucunuz varsa yukarıdaki adımları tüm Postgres sunucularında tekrarlayın.
- StatisticsCollector politikasını kullanan API proxy'nizi dağıtımdan kaldırın ve dağıtın.
- API çağrılarını çalıştırın.
- Özelleştirilebilen değişkenlerin, Özel Rapordaki özel boyutlarda görünüp görünmediğini kontrol edin.
Sorun devam ederse Apigee Edge Destek Ekibi ile iletişime geçin.