Özelleştirilebilen değişken, Analytics özel raporlarına görünür değil

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Belirti

StatisticsCollector politikası kullanılarak oluşturulan özelleştirilebilen değişken, yeni Edge kullanıcı arayüzündeki Analytics Özel Raporlarındaki Özel Boyutlar altında görünmüyor.

Hata mesajları

Hata gözlemlenmedi.

Olası nedenler

Aşağıdaki tabloda bu sorunun olası nedenleri listelenmiştir:

Neden Şunun için:
Özelleştirilebilen değişken, standart yönergelere uymuyor 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ılmadı 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şken, standart kurallara uymuyor

Teşhis

StatisticsCollector politikasında kullanılan özelleştirilebilen 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 bir boşluk olduğu gösterilmektedir. Bu nedenle, Özel Rapordaki Özel Boyut altında görünmez.

  <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 özelleştirilebilen değişken adları aşağıdaki kurallara uygun olmalıdır:

  • Adlar [a-z][0-9] ve "_" karakterlerini 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ıda yer alan tabloda listelenen ayrılmış anahtar kelimelere izin verilmez. Örneğin, "user" (kullanıcı) ifadesine izin verilmez. Daha fazla bilgi için SQL Anahtar Kelimeleri başlıklı makaleyi inceleyin.

Sorun devam ederse StatisticsCollector politikasını uygulayan API proxy'sinde trafik yok bölümüne gidin.

StatisticsCollector politikasını uygulayan API Proxy'de trafik yok

Teşhis

StatisticsCollector politikasını uygulayan API proxy'sinde trafik yoksa özelleştirilebilen 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 özelleştirilebilen değişkenlerin özel rapordaki özel boyutlarda görünüp görünmediğini kontrol edin.

Sorun devam ederse Özelleştirilebilen değişken, Postgres sunucusuna aktarılmadı bölümüne gidin.

Özelleştirilebilen değişken, Postgres sunucusuna aktarılmadı

Teşhis

API proxy'sinde özelleştirilebilen değişken oluşturulduğunda ve API çağrıları yapıldığında değişken, ilk olarak 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.

Özelleştirilebilen değişkenin nerede eksik olduğunu belirlemek için:

  1. Aşağıdaki komutu kullanarak ZooKeeper ağacını oluşturun:
    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt
  2. ZooKeeper ağaç çıkışında özelleştirilebilen değişkeni arayın.
  3. Ö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:
    1. Postgres düğümünde PostgreSQL'e giriş yapın:
      psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
    2. 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';
  4. Büyük olasılıkla, olgu tablosunda özelleştirilebilen değişken sütununun eksik olduğunu görürsünüz. Bu nedenle, bu sütun Özel Boyutlar'da görünmez.

Çözünürlük

1. çözüm: Postgres sunucusunu yeniden başlatın

  1. 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: forceonboard özelliğini etkinleştirin

Aşağıdaki adımları uygulayarak forceonboard özelliğini etkinleştirin:

  1. Postgres sunucu makinesinde /opt/apigee/customer/application/postgres-server.properties dosyasını oluşturun (henüz oluşturulmadıysa).
  2. Bu dosyaya aşağıdaki satırı ekleyin:
    conf_pg-agent_forceonboard=true
  3. 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
  4. Postgres sunucusunu yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  5. Birden fazla Postgres sunucunuz varsa yukarıdaki adımları tüm Postgres sunucularında tekrarlayın.
  6. StatisticsCollector politikasını kullanan API proxy'nizin dağıtımını kaldırıp yeniden dağıtın.
  7. API çağrılarını çalıştırın.
  8. Özelleştirilebilen değişkenlerin, Özel Rapor'daki özel boyutlarda görünüp görünmediğini kontrol edin.

Sorun devam ederse Apigee Edge Destek Ekibi ile iletişime geçin.