Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Belirti
Qpidd sunucusunun analiz mesajlarını PostgreSQL'e aktarmaması nedeniyle, Edge kullanıcı arayüzünde analiz verileri eksiktir. Edge'de edge-qpid-server
bileşeni, Qpidd sunucusuna karşılık gelir.
Qpidd, her bir analiz grubu için iki sıra tutar:
ax-q-axgroup001-consumer-group-001
Bu sıra, Mesaj İşlemciler ve Yönlendiricilerden aktarılan analiz mesajlarını içerir. Mesajlar buradan
edge-qpid-server
tarafından alınır. Bu araç, mesajları ayrıştırıp PostgreSQL'e ekler. İletiler başarıyla işlendikten sonra sıradan kaldırılır.ax-q-axgroup001-consumer-group-001-dl
Bu sıra, geçersiz sıradadır. Bu hedef,
edge-qpid-server
ürününün işleyemediği ve bu nedenle artık almak istemediği iletiler için hedef görevi görür. Bu alan, genellikle maksimum yayınlanma sayısı aşıldığında veya PostgreSQL, çalışma zamanı hataları nedeniyle yeni veri eklemeyi reddettiğinde doldurulur.
Hata Mesajı
Temel neden edge-qpid-server
bileşenindeki çeşitli çalışma zamanı hatalarından kaynaklanıyor olabilir. edge-qpid-server
PostgreSQL'den bir çalışma zamanı hatası alırsa genellikle, zaten mevcut değilse geçersiz harf sırası oluşturur ve aşağıdaki mesajı oraya gönderir:
yyyy-MM-dd HH:mm:ss,SSS ax-q-axgroup001-consumer-group-001-persistpool-thread-6 WARN c.a.a.m.MessageConsumer - MessageConsumer.process() : Sending message batch to the DLQ.
Olası Nedenler
Neden | Açıklama | Şunun İçin Geçerli Sorun Giderme Talimatları: |
---|---|---|
İletiler qpidd'in geçersiz harf sırasında takıldı | edge-qpid-server , Qpidd aracısından okuduğu iletileri anlayamadı veya PostgreSQL'e gönderilen iletileri sürdüremedi.
|
Edge Özel Bulut Kullanıcıları |
Genel Teşhis Adımları
Qpidd sırası istatistiklerini görüntülemek için aşağıdaki komutu çalıştırın:
qpid-stat -q
Çıkış, aracıda kayıtlı sıra grubunu döndürür. Adı "-dl" ile biten sıradaki iletiler doldurulmuşsa geçersiz iletiler var demektir.
Queues queue dur autoDel excl msg msgIn msgOut bytes bytesIn bytesOut cons bind ======================================================================================================================== ax-q-axgroup-001-consumer-group-001 Y 0 185 185 0 13.8m 13.8m 6 2 ax-q-axgroup-001-consumer-group-001-dl Y 0 70 70 0 3.9m 3.9m 0 2
Neden: İletiler qpidd'in geçersiz harf sırasında takıldı
Teşhis
Bu durum aşağıdaki senaryolarda ortaya çıkabilir:
- Geçmişte PostgreSQL çökmüş olan bir yeni sürüme geçme işlemi yapılmıştı.
- Ağ sorunları nedeniyle PostgreSQL'in geçici olarak kesintiye uğraması.
edge-qpid-server
, PostgreSQL'e mesaj göndermeye çalıştı ancak PostgreSQL bir çalışma zamanı hatası döndürdü.
Çözünürlük
Genel Teşhis Adımları'ndaki sıraların adını not edin. Örneğin:
ax-q-axgroup-001-consumer-group-001
ax-q-axgroup-001-consumer-group-001-dl
qpid-tool
komutunu çalıştırarak etkileşimli birqpid
istem girin:qpid-tool
Bu comamnd şunu döndürür:
Management Tool for QPID qpid:
Etkin aracıların listesini almak için
list broker
komutunu çalıştırın:list broker
Bu comamnd şunu döndürür:
Object Summary: ID Created Destroyed Index ======================================= 125 21:00:00 - amqp-broker
Burada
ID
sütunu, aracının kimliğini belirtir.Aracının kimliğini not edin. Örnekte 125'tir.
İletileri geçersiz kuyruğundan asıl sıraya geri taşımak için aşağıdaki komutu çalıştırın:
call 125 queueMoveMessages ax-q-axgroup-001-consumer-group-001-dl ax-q-axgroup-001-consumer-group-001 100000 {}
Bu comamnd şunu döndürür:
OK (0) - {}
Sonuç olmadığında, taşınacak ileti olmadığı için bir şey yapılması gerekmezdi.
OK(0)
kodunu görmüyorsanız Apigee Edge Destek Ekibi ile iletişime geçmeniz gerekir.Qpid aracı terminalinden çıkın.
quit
5 dakika bekleyip Yaygın Teşhis Adımları'ndaki teşhis adımlarını tekrar çalıştırın. Asıl sıradaki iletilerin işlenmekte olduğunu doğrulayın ve geçersiz ileti sayısının 0'da kaldığından emin olun.
Sorun devam ederse sonraki bölüme geçin.
Teşhis Bilgileri Toplanmalı
Yukarıdaki talimatları uygulamanıza rağmen sorun devam ederse lütfen aşağıdaki teşhis bilgilerini toplayın. Apigee Edge Destek Ekibi ile iletişime geçin ve bu bilgileri paylaşın:
- Qpidd günlükleri:
/opt/apigee/var/log/apigee-qpidd/apigee-qpidd.log
- Postgresql günlükleri:
/opt/apigee/var/log/apigee-postgresql/apigee-postgresql.log
- Edge-qpid-server günlükleri:
/opt/apigee/var/log/edge-qpid-server/logs/system.log
- Edge-postgres-server günlükleri:
/opt/apigee/var/log/edge-postgres-server/logs/system.log
Qpidd sırası istatistikleri:
qpid-stat -q
Aşağıdaki curl komutu tarafından döndürülen Analytics grubu:
curl -u sysadminEmail:password http://mgmt:8080/v1/analytics/groups/ax