Ö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

İstatistikler Toplayıcı politikası kullanılarak oluşturulan özelleştirilebilen değişken, Edge kullanıcı arayüzündeki Analytics Özel Raporları'nda bulunan Özel Boyutlar altında görünmez.

Hata mesajları

Herhangi bir hata yok.

Olası nedenler

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

Neden (Hedef müşteri) için
Özelleştirilebilen Değişken standart yönergelere uymuyor Edge Özel ve Genel Bulut kullanıcıları
İstatistiklerCollector politikasını uygulayan API Proxy'sinde trafik yok Edge Özel ve Genel Bulut kullanıcıları
Özelleştirilebilen değişken Postgres sunucusuna aktarılmadı Edge Private Cloud kullanıcıları

Bu nedene ilişkin olası çözümleri görmek için tabloda ilgili bağlantıyı tıklayın.

Özelleştirilebilen Değişken standart yönergelere uymuyor

Teşhis

İstatistiklerCollector politikasında kullanılan özelleştirilebilen değişken adı standart kurallara uygun değilse (bkz. Çözüm) Özel Raporlar'da görünmez.

Aşağıdaki kod snippet'i, "product id" değişken adı boşluk içerdiğinden, Özel Rapor'daki Özel Boyut altında görünmemektedir.

  <StatisticsCollector name="publishPurchaseDetails">
    <Statistics>
      <Statistic name="productID" ref="product id" type="string">999999</Statistic>
    </Statistics>
  </StatisticsCollector>

Çözünürlük

API proxy'sindeki StatsCollector politikasında kullanılan özel değişken adları aşağıdaki yönergelere 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 kullanımı yoksayılır.
  • 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 İstatistiklerCollector politikasını uygulayan API Proxy'de trafik yok bölümüne gidin.

İstatistiklerCollector politikasını uygulayan API Proxy'sinde trafik yok

Teşhis

İstatistikCollector politikasını uygulayan API proxy'sinde trafik yoksa özelleştirilebilen değişken, Özel Raporlar'da görünmez.

Çözünürlük

İstatistiklerCollector politikasını uygulayan API proxy'sine bazı çağrılar yapın.

Bir süre bekleyin ve özelleştirilebilen değişkenlerin Özel Rapor'daki özel boyutlarda görünüp görünmediğini kontrol edin.

Sorun devam ederse Özelleştirilebilen Değişken Postgres Sunucusu'na 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 önce Mesaj İşleyici'de bellek içinde depolanır. Mesaj İşleyici, daha sonra yeni değişkenle ilgili bilgileri ZooKeeper'a gönderir ve sonra da bu bilgileri Postgres veritabanına sütun olarak eklemek için Postgres sunucusuna gönderir.

Zaman zaman ZooKeeper'dan gelen bildirimler ağ sorunları nedeniyle Postgres sunucusuna ulaşmayabilir. Bu hata nedeniyle, özelleştirilebilen değişken Özel Rapor'da görünmeyebilir.

Özelleştirilebilen değişkenin eksik olduğu yerleri 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ç çıktısında özelleştirilebilen değişkeni arayın.
  3. Özelleştirilebilen değişken ZooKeeper ağacında mevcutsa özelleştirilebilen değişkenin Postgres veritabanına eklenip eklenmediğini kontrol etmek için aşağıdaki komutları yürütün:
    1. Postgres düğümünde PostgreSQL'e giriş yapın:
      psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
    2. Şu 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, özelleştirilebilen değişken sütununun bilgi tablosunda yer almadığını görürsünüz. Bunun nedeni, Özel Boyutlar'da görünmemesinin nedenidir.

Çö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 okumayı zorunlu kılı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 zorlama panosunu etkinleştirin

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

  1. Mevcut değilse Postgres sunucu makinesinde /opt/apigee/customer/application/postgres-server.properties dosyası oluşturun.
  2. Bu dosyaya şu 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. İstatistiklerCollector politikasını kullanan API proxy'nizin dağıtımını kaldırın ve 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.