İzleme oturumu oluşturulamadı

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Belirti

Kullanıcı, Edge kullanıcı arayüzünde izleme oturumu oluşturamıyor.

Hata Mesajı

Edge kullanıcı arayüzünde aşağıda gösterildiği gibi bir hata mesajı alırsınız:

Error creating trace session for API proxy <api proxy name>, revision <revision number>, environment <environment name>.
Failed to create DebugSession <session number> 

Edge kullanıcı arayüzünde gözlemlenen örnek bir hata mesajının ekran görüntüsünü aşağıda bulabilirsiniz:

Olası Nedenler

Bu hatanın olası nedenlerinden bazıları aşağıda listelenmiştir:

Neden Açıklama Aşağıdakiler İçin Geçerli Sorun Giderme Talimatları
Ağ Bağlantısı Sorunu Ağ bağlantısı sorunları veya güvenlik duvarı kuralları nedeniyle Yönetim Sunucusu ile İleti İşleyici arasındaki iletişim hatası. Edge Private Cloud Kullanıcıları
Ortam, Mesaj İşleyici'ye yüklenmedi Belirli ortam (izlemeyi etkinleştirmeye çalıştığınız), bir hata nedeniyle İleti İşleyen'e yüklenmedi.
Eski İleti İşleyen Girişleri Yönetim sunucusu, mevcut olmayan (eski) ileti işlemcilerine başvuruyor.
İleti İşleyiciye Ulaşılamıyor Mesaj İşleyici durduruldu veya erişilemez duruma geldi.
Yüksek Kaynak Kullanımı Sorunu İleti İşlemcileri yüksek kaynak (CPU, Bellek veya Yük) kullanımı yaşıyor.
API Proxy, bir veya daha fazla Mesaj İşleyiciye dağıtılmadı Dağıtım sırasındaki etkinlik bildiriminin olmaması nedeniyle API Proxy'si, bir veya daha fazla Mesaj İşleyiciye dağıtılamayabilir.
Edge kullanıcı arayüzüyle ilgili sorun Edge kullanıcı arayüzü, bir hata nedeniyle izleme oturumu oluşturamıyor.

Genel Teşhis Adımları

  1. Şu yönetim API'sini yürütün:

    curl -v <management-server-host>:8080/v1/runtime/organizations/<org-name>/environments/<env-name>/apis/<apiproxy-name>/revisions/<revision-number>/debugsessions -u <user>
    
  2. Hatayla karşılaşırsanız lütfen not edin. Ağ Bağlantısı Sorunu bölümüne geçin.

  3. Başarılı bir yanıt almanız, izleme oturumunun Management API aracılığıyla oluşturulabileceğini gösterir. Ancak Edge kullanıcı arayüzünde, izleme oturumunun kullanıcı arayüzünde oluşturulamaması gibi bir sorun olabilir. Edge kullanıcı arayüzüyle ilgili sorun bölümüne gidin.

Neden: Ağ Bağlantısı Sorunu

Teşhis

  1. Yönetim Sunucusu günlüğünü /opt/apigee/var/log/edge-management-server/logs/system.log kontrol edin ve izleme/hata ayıklama oturumu oluşturulurken herhangi bir hata olup olmadığına bakın.

    Yönetim Sunucusu Günlüğü'nden örnek hata

    2018-02-08 09:08:21,310 org:myorg env:uat  qtp1073741635-1074 ERROR DISTRIBUTION - DebugSessionAPI.createDebugSession() : createDebugSession : Unable to connect to the server with UUID cedeabd2-e4d1-40bb-8f18-d6afc8835e5b
    org.apache.http.conn.HttpHostConnectException: Connect to 10.84.75.92:8082 [/10.84.75.92] failed: Connection refused
        at org.apache.http.impl.conn.HttpClientConnectionOperator.connect(HttpClientConnectionOperator.java:140) ~[httpclient-4.3.5.jar:4.3.5]
        at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:318) ~[httpclient-4.3.5.jar:4.3.5]
        at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:363) ~[httpclient-4.3.5.jar:4.3.5]
    ...<snipped>
    Caused by: java.net.ConnectException: Connection refused
        at java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:1.8.0_65]
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[na:1.8.0_65]
    ...<snipped>
    
  2. Yukarıdaki örnek hata, Yönetim Sunucusu 8082 numaralı bağlantı noktasında İleti İşleyici'ye bağlanmaya çalıştığında "Bağlantı reddedildi" hatalarını aldığımızı göstermektedir. Bu nedenle, Yönetim Sunucusu izleme oturumunu oluşturamıyor.

  3. Ağ bağlantısıyla ilgili herhangi bir hata veya yukarıdaki örnekte gösterilene benzer bir hata görmüyorsanız Ortam İleti İşleyici'de yüklenmedi bölümüne geçin.

  4. Ağ bağlantısıyla ilgili hatalar veya yukarıdaki örnekte gösterilene benzer bir hata görürseniz aşağıdaki adımları uygulayın.

  5. Yönetim Sunucusu ile İleti İşlemci arasındaki bağlantıyı 8082 numaralı bağlantı noktası üzerinde test etmek için aşağıdaki adımları uygulayın:

    1. Telnet kullanılabiliyorsa telnet'i kullanın:

      telnet <MessageProcessor_IP> 8082
      
    2. Telnet kullanılamıyorsa bağlantıyı aşağıdaki şekilde kontrol etmek için netcat'i kullanın:

      nc -vz <MessageProcessor_IP> 8082
      
    3. "Bağlantı Reddedildi" yanıtını alırsanız veya "Bağlantı zaman aşımına uğradı" mesajını görüyorsanız sonraki adıma geçin.

  6. İleti İşleyicilerin her birine, hatayı gösteren ilgili IP adresleriyle giriş yapın ve aşağıdaki adımları uygulayın:

    1. Mesaj İşleyici'nin 8082 numaralı bağlantı noktasından dinleme yapıp yapmadığını kontrol edin:

      netstat -an | grep LISTEN | grep 8082
      
    2. Mesaj İşleyici, 8082 numaralı bağlantı noktasından dinliyorsa 7. adıma geçin.

    3. İleti İşlemci, 8082 numaralı bağlantı noktasında dinleme yapmıyorsa şu komutu kullanarak Mesaj İşleyici'yi yeniden başlatın:

      /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
      
    4. İleti İşleyici şu komutu kullanmaya tam olarak başlayana kadar bekleyin:

      /opt/apigee/apigee-service/bin/apigee-service edge-message-processor wait_for_ready
      
    5. İleti İşleyici kurulduktan sonra, İleti İşleyen'in 8082 numaralı bağlantı noktasını dinleyip dinlemediğini tekrar kontrol edin.

    6. Mesaj İşleyici, 8082 numaralı bağlantı noktasından dinliyorsa 7. adıma geçin.

  7. Şu anda kullanıcı arayüzünde izleme oturumunu başlatıp başlatamadığınızı kontrol edin. Sorun artık gözlemlenmiyorsa aşağıdaki adımları atlayın.

  8. İleti İşleyici çalışıyor ve 8082 numaralı bağlantı noktasını dinlediği halde Yönetim Sunucusu gibi diğer sunuculardan bağlanamıyorsanız büyük ihtimalle harici bağlantıları engelleyen bir güvenlik duvarı vardır.

  9. Güvenlik duvarı kurallarını kontrol etmek için uygun komutu kullanın. Örneğin, sisteminizde tanımlı tüm güvenlik duvarı kurallarını listelemek için iptables komutunu çalıştırabilirsiniz:

    iptables -L -n
    
  10. 8082 bağlantı noktası için ayarlanmış bir güvenlik duvarı kuralı yoksa Yüksek Kaynak Kullanımı Sorunu bölümüne geçin.

  11. 8082 bağlantı noktasında ayarlanmış güvenlik duvarı kuralları varsa aşağıdaki Çözüm bölümüne geçin.

Çözüm

  1. Harici sunuculardan gelen 8082 numaralı bağlantı noktasında gelen/giden trafiğe izin vermek için ağ yöneticinizle birlikte çalışın.

Sorun devam ederse Teşhis Bilgilerinin Toplanması Gerekenler bölümüne gidin.

Neden: Ortam, Mesaj İşleyiciye yüklenmedi

Teşhis

  1. Yönetim Sunucusu günlüklerini /opt/apigee/var/log/edge-management-server/logs/system.log kontrol ederek izleme/hata ayıklama oturumu oluşturulurken herhangi bir hata olup olmadığına bakın.
  2. "MP3'lerden geçerli yanıt yok" gibi bir hata mesajı görebilirsiniz. aşağıdaki gibi izleme/hata ayıklama oturumu oluşturma işlemi sırasında:

    2018-01-30 08:28:09,721 org:mynonprod env:uat  qtp2007599722-712162 ERROR DISTRIBUTION - DebugSessionAPI.createDebugSession() : no valid responses from MP(s), throwing error
    2018-01-30 08:28:09,723 org:mynonprod env:uat  qtp2007599722-712162 ERROR REST - CustomJAXRSInvoker.performInvocation() : CustomJAXRSInvoker.performInvocation : Method com.apigee.distribution.DebugSessionAPI.createDebugSession threw an exception.
    2018-01-30 08:28:09,724 org:mynonprod env:uat  qtp2007599722-712162 ERROR REST - ExceptionMapper.toResponse() : Error occurred : Failed to create DebugSession 1517297564678
    2018-01-30 08:28:09,724 org:mynonprod env:uat  qtp2007599722-712162 ERROR REST - ExceptionMapper.toResponse() : Returning error response : ErrorResponse{errorCode = distribution.CreateDebugSessionFailed, errorMessage = Failed to create DebugSession 1517297564678}
    

    Bu hata, İleti İşleyicilerin herhangi bir nedenle Yönetim Sunucusu'na yanıt vermediğini gösterir.

  3. Yukarıdaki örnekte gösterilene benzer bir hata görmüyorsanız Eski İleti İşlemci Girişleri'ne geçin.

  4. Yukarıdaki örnekte gösterilene benzer bir hata görürseniz aşağıdaki adımları uygulayın.

  5. Bu hatanın en olası nedenlerinden biri, izleme oturumunu oluşturmaya çalıştığınız ortamın İleti İşleyenlere yüklenmemesidir.

  6. İleti İşleyicilerin her birine giriş yapın ve izleme oturumunu oluşturmaya çalıştığınız ortamın aşağıdaki komutu kullanarak İleti İşleyici'ye yüklenip yüklenmediğini kontrol edin:

    curl -s http://localhost:8082/v1/runtime/organizations/<org-name>/environments
    

    Örnek çıkış:

    Yukarıdaki komutun çıkışında İleti İşleyici'ye yüklenen belirli kuruluşa ait ortamların listesini görürsünüz. Örneğin, preprod ve test ortamları Mesaj İşleyici'ye yüklendiyse çıktı aşağıdaki gibi gösterilir:

    [ "preprod", "test" ]

  7. Söz konusu ortam için izleme oturumu oluşturmaya çalıştığınız "dev", yukarıdaki komutun bir parçası olarak listelenmişse, ardından Eski İleti İşlemci Girişleri'ne geçin.

  8. Belirli bir ortam yukarıdaki komutun parçası olarak listelenmiyorsa ("dev"), Ortamların yüklenmesi sırasında İleti İşleyicileri'nde /opt/apigee/var/log/edge-message-processor/logs/system.log ve /opt/apigee/var/log/edge-message-processor/logs/startupruntimeerrors.log'te hata olup olmadığını kontrol edin.

  9. İleti İşleyen'e ortam yükleme hatasına yol açabilecek birçok farklı hata olabilir. Çözüm, oluşan hataya bağlıdır.

Çözünürlük

Ortam, birçok nedenden dolayı Mesaj İşleyici'ye yüklenmeyebilir. Bu bölümde, bu soruna yol açabilecek birkaç olası neden gösterilmekte ve sorunun nasıl çözüleceği anlatılmaktadır.

  1. İleti İşleyici günlüğünde aşağıdaki hatalardan birini görürseniz bunun nedeni, belirtilen ortamda belirtilen anahtar deposuna/güven deposuna eklenmiş sertifikalar/anahtarlarda bulunan bir sorundur.

    Hata 1: java.security.KeyStoreException: Kendi sertifikanın üzerine yazılamaz

    2018-01-30 12:04:38,248 pool-47-thread-4 ERROR MESSAGING.RUNTIME - AbstractConfigurator.propagateEvent() : Error while handling the update for the Configurator 
    com.apigee.kernel.exceptions.spi.UncheckedException: Failed to add certificate : mycert in key store : mytruststore in environment : test
    at com.apigee.entities.configurators.KeyStore.setCertificateEntry(KeyStore.java:156) ~[config-entities-1.0.0.jar:na] 
    at com.apigee.entities.configurators.KeyStore.handleUpdate(KeyStore.java:101) ~[config-entities-1.0.0.jar:na] 
    at com.apigee.entities.AbstractConfigurator.propagateEvent(AbstractConfigurator.java:85) ~[config-entities-1.0.0.jar:na] 
    at com.apigee.messaging.runtime.Environment.handleUpdate(Environment.java:238) [message-processor-1.0.0.jar:na] 
     
    Caused by: java.security.KeyStoreException: Cannot overwrite own certificate 
    at com.sun.crypto.provider.JceKeyStore.engineSetCertificateEntry(JceKeyStore.java:355) ~[sunjce_provider.jar:1.8.0_151] 
    at java.security.KeyStore.setCertificateEntry(KeyStore.java:1201) ~[na:1.8.0_151] 
    at com.apigee.entities.configurators.KeyStore.setCertificateEntry(KeyStore.java:153) ~[config-entities-1.0.0.jar:na]
    ... 20 common frames omitted
    2018-01-30 12:04:38,250 pool-47-thread-4 ERROR MESSAGING.RUNTIME - AbstractConfigurator.rollbackTransaction() : Error in processing the changes : Unknown resource type cert
    

    Hata 2: java.security.KeyStoreException: Gizli anahtarın üzerine yazılamıyor

    2017-11-01 03:28:47,560 pool-21-thread-7 ERROR MESSAGING.RUNTIME - AbstractConfigurator.propagateEvent() : Error while handling the update for the Configurator 
    com.apigee.kernel.exceptions.spi.UncheckedException: Failed to add certificate : mstore in key store : myTruststore in environment : dev 
    at com.apigee.entities.configurators.KeyStore.setCertificateEntry(KeyStore.java:156) ~[config-entities-1.0.0.jar:na] 
    at com.apigee.entities.configurators.KeyStore.handleUpdate(KeyStore.java:101) ~[config-entities-1.0.0.jar:na] 
    ... 
    Caused by: java.security.KeyStoreException: Cannot overwrite secret key 
    at com.sun.crypto.provider.JceKeyStore.engineSetCertificateEntry(JceKeyStore.java:354) ~[sunjce_provider.jar:1.8.0_144] 
    at java.security.KeyStore.setCertificateEntry(KeyStore.java:1201) ~[na:1.8.0_144] 
    at com.apigee.entities.configurators.KeyStore.setCertificateEntry(KeyStore.java:153) ~[config-entities-1.0.0.jar:na] 
    ... 20 common frames omitted 
    
    2017-11-01 03:28:47,562 pool-21-thread-7 ERROR MESSAGING.RUNTIME - AbstractConfigurator.rollbackTransaction() : Error in processing the changes : Unknown resource type cert 
    
  2. Aşağıdaki management API çağrısını kullanarak önceki adımda gösterilen hata mesajında belirtilen anahtar deposu/truststore ayrıntılarını alın:

    curl -v "http://<management-IPaddress>:8080/v1/organizations/<org-name>/environments/<env-name>/keystores/myTruststore" -u <user>
    

    Örnek çıkış:

    { 
    "certs": [ 
    "mycert", 
    "mycert-new" 
    ], 
    "keys": [ 
    "mycert" 
    ], 
    "name": "myTruststore" 
    }
    
  3. Örnek çıktı, myTruststore güven deposunda iki sertifika ve bir anahtar olduğunu gösterir. Truststore genellikle bir anahtar içermez. Varsa tek bir sertifika ve tek bir anahtara sahip olmak daha iyidir.

  4. Aşağıdaki API'yi kullanarak iki sertifikayla ilgili ayrıntıları öğrenin:

    curl -s http://<management-IPaddress>:8080/v1/runtime/organizations/<org-name>/environments/<env-name>/keystores/<keystore-name>/certs/<cert-name>
    
  5. Her sertifikanın geçerlilik bitiş tarihini kontrol edin ve süresi dolmuş/eski sertifikayı belirleyin.

  6. Süresi dolmuş veya istenmeyen sertifikayı "myTruststore" güven deposundan silin.

Sorun devam ederse veya yukarıdaki 1. adımda belirtilenlerin dışında bir hata görürseniz Teşhis Bilgilerinin Toplanması Gerekenler bölümüne gidin.

Neden: Eski İleti İşlemci Girişleri VEYA İleti İşlemcilerine Erişilemiyor

Teşhis

  1. Edge kullanıcı arayüzünün uzun zaman alması ve izleme oturumunu oluşturamamasının olası nedenlerinden bazıları şunlardır:
    1. Yönetim sunucusu, mevcut olmayan (eski) ileti işlemcilerini belirtiyor olabilir
    2. Mesaj İşleyicileri durduruldu veya onlara ulaşılamıyor
    3. İleti İşlemcileri yüksek bellek/CPU kullanımına sahip
  2. Yönetim Sunucusu günlüklerini /opt/apigee/var/log/edge-management-server/logs/system.log kontrol ederek izleme/hata ayıklama oturumu oluşturulurken hata olup olmadığına bakın.
  3. "server <UUID>" gibi bir hata mesajıyla karşılaşabilirsiniz aşağıda gösterildiği gibi izleme/hata ayıklama oturumu oluşturulurken" çalışmıyor:

    2017-12-27 07:42:38,975 org:cocacola env:prod qtp2007599722-222063 INFO DISTRIBUTION - DebugSessionAPI.createDebugSession() : server 458b5910-2646-441c-a6e2-428b6d84e021 is either not up or reachable, skipping the server
    

    Bu durum, "Bağlantı zaman aşımına uğradı" hatasını başka bir hatadan izleyebilir. aşağıda gösterildiği gibi kısa bir süre sonra):

    2017-12-27 07:44:46.000 UTC org:cocacola env:prod qtp2007599722-222063 ERROR DISTRIBUTION - DebugSessionAPI.createDebugSession() : createDebugSession : Unable to connect to the server with UUID {}, skipping it458b5910-2646-441c-a6e2-428b6d84e021 org.apache.http.conn.HttpHostConnectException: Connect to 192.168.101.7:8080 [/192.168.101.7] failed: Connection timed out (Connection timed out) at org.apache.http.impl.conn.HttpClientConnectionOperator.connect(HttpClientConnectionOperator.java:140) ~[httpclient-4.3.5.jar:4.3.5] at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:318) ~[httpclient-4.3.5.jar:4.3.5] at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:363) ~[httpclient-4.3.5.jar:4.3.5] at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:219) ~[httpclient-4.3.5.jar:4.3.5] 
    <snipped>
    Caused by: java.net.ConnectException: Connection timed out (Connection timed out) at java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:1.8.0_144] at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[na:1.8.0_144]
    <snipped>
    
  4. Bu iki hata, belirli İleti İşleyen(ler)inden kaynaklanıyor olabilir:

    1. Eski olma (artık mevcut olmaması)
    2. Herhangi bir nedenle aşağı/ulaşılamama
  5. Lütfen karşılaşılan senaryoya bağlı olarak uygun çözümü uygulayın.

Çözünürlük

1. Senaryo : İleti İşleyen(ler) eski (mevcut değil)

  1. Aşağıdaki Management API'yi kullanarak Mesaj İşleyenlerin listesini alın:

    curl -u <sysadmin> "http://<management-server-host>:8080/v1/servers?pod=<podName>&regions=<regionName>"
    
  2. Yönetim Sunucusu günlüklerindeki hata mesajında belirtilen İleti İşleyicilerin UUID'lerine karşılık gelen IP adreslerini veya ana makine adlarını not edin (yukarıdaki Teşhis bölümünde 3. adım). Aşağıdaki yöntemlerden birini kullanarak bunların geçerli İleti İşleyenler olup olmadığını doğrulayın:

    1. En yeni Private Cloud topolojisi kurulum şeması
    2. En son uç sunucusu IP adresi - Ana makine adı eşleme tablosu

    Bu kişilerin geçerli ileti işlemcileri olduğunu tespit ederseniz 2. Senaryo : İleti işleyenlere ulaşılamıyor adımına geçin.

  3. Aşağıdaki yönetim API'lerini kullanarak eski (mevcut olmayan) Mesaj İşleyicilerini silin:

    1. Mesaj İşleyici'nin kaydını kuruluşun ortamlarından silin:

      curl -X POST http://<management-server-host>:8080/v1/o/<orgName>/e/<envName>/servers -d "uuid={uuid}&region=<regionName>&pod=<podName}&action=remove" 
      
    2. Sunucu türünün kaydını silin:

      curl http://<management-server-host>:8080/v1/servers -X POST -d "type={message-processor}&region=<regionName>&pod=<podName>&uuid=<uuid>&action=remove"
      
    3. Sunucuyu silin:

      curl http://<management-ip>:8080/v1/servers/<uuid> -X DELETE
      
  4. Kuruluşunuzdaki diğer ortamlarda aynı sorunla karşılaşıyorsanız 3. adımı tekrarlayın.

2. Senaryo: İleti İşleyenlere ulaşılamıyor

  1. Yönetim Sunucusu günlüklerindeki hata iletisinde gözlemlenen UUID'lere dayalı olarak IP adreslerini/Ana makine adlarını belirleyerek İleti İşleyicilerin her birine giriş yapın.
  2. Mesaj İşleyici'yi yeniden başlatın:

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
    

İzleme oturumunu oluşturup oluşturamadığınızı tekrar kontrol edin. Sorun devam ederse Teşhis Bilgilerinin Toplanması Zorunludur bölümüne gidin.

Neden: Yüksek Kaynak Kullanımı Sorunu

Teşhis

  1. İleti İşleyicilerin her birine giriş yapın ve CPU, Bellek veya Yük gibi kaynak kullanımının yüksek olup olmadığını kontrol edin. İleti İşleyici işleminin kaynak kullanımı bilgilerini almak için Unix tabanlı işletim sistemlerinde top komutunu kullanabilirsiniz:

    top
    
  2. Mesaj İşleyiciler yüksek kaynak kullanımı yaşamıyorsa Teşhis Bilgilerini Toplama Zorunlu bölümüne geçin.

  3. İleti İşlemcileri yüksek CPU veya bellek kullanımı yaşıyorsa bu durum İleti İşleyici'nin Yönetim Sunucusu'na zamanında yanıt vermemesine yol açabilir. Bu durum, sonunda izleme oturumu oluşturabilmenizi engeller.

    1. Herhangi bir Mesaj İşlemci, yüksek CPU kullanımı yaşıyorsa her 30 saniyede bir aşağıdaki komutu kullanarak üç iş parçacığı dökümü oluşturun:

      sudo <JAVA_HOME>/bin/jstack -l <pid> > <filename>
      
    2. Herhangi bir İleti İşlemci yüksek düzeyde bellek kullanımına sahipse aşağıdaki komutu kullanarak bir heap dump oluşturun:

      sudo -u apigee <JAVA_HOME>/bin/jmap -dump:live,format=b,file=<filename> <pid>
      
      
    3. Çözünürlük'e taşı.

Çözünürlük

  1. Aşağıdaki komutu kullanarak Mesaj İşleyici'yi yeniden başlatın. Bu durumda CPU ve bellek kullanımı azalır:

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  2. API çağrılarını izleyin ve sorunun devam edip etmediğini doğrulayın.

  3. Apigee Edge Destek Ekibi ile iletişime geçerek iş parçacığı dökümlerini, yığın dökümünü ve İleti İşlemci günlüklerini (/opt/apigee/var/log/edge-message-processor/logs/system.log)) sağlayarak yüksek CPU/bellek kullanımının nedenini araştırın.

Neden: API Proxy, bir veya daha fazla Mesaj İşleyiciye dağıtılmadı

Nadiren de bir API Proxy'si, bir veya daha fazla Mesaj İşleyiciye dağıtılamayabilir. Bu durum çoğunlukla, belirli bir API Proxy'sinin dağıtımı sırasında Yönetim Sunucusu'ndan İleti İşleyen'e etkinlik bildiriminin olmamasından kaynaklanır. Bu durumda, Edge kullanıcı arayüzünde izleme oturumunu oluşturamazsınız.

Teşhis

  1. İleti işlemcilerinin her birine giriş yapın ve aşağıdaki komutu kullanarak API Proxy'sinin özel düzeltmesinin dağıtılıp dağıtılmadığını kontrol edin:

    curl -v localhost:8082/v1/runtime/organizations/<orgname>/environments/<envname>/apis/<apiname>/revisions
    

    Örnek çıkış:

    Düzeltme listesini yukarıdaki komutun çıkışı olarak görürsünüz. Örneğin, düzeltme 12 dağıtıldıysa çıkışı aşağıdaki gibi görürsünüz:

    [ "12" ]

  2. API Proxy'sinin ilgili düzeltmesi, yukarıdaki 1. adımda bahsedilen komutun çıkışı olarak görünmüyorsa ilgili İleti İşleyici'yi aşağıdaki Çözüm bölümünde açıklandığı şekilde yeniden başlatın.

  3. Tüm Mesaj İşleyicileri için 1-2 arasındaki adımları tekrarlayın.

  4. API Proxy'sinin ilgili düzeltmesi tüm İleti İşlemcilerine dağıtıldıysa bu sorunun nedeni bu değildir. Teşhis Bilgilerinin Toplanması Gerekenler bölümüne gidin.

Çözünürlük

  1. API Proxy'sinin ilgili düzeltmesinin dağıtılmadığı belirli Mesaj İşleyicileri yeniden başlatın:

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
    

Neden: Edge kullanıcı arayüzüyle ilgili sorun

Teşhis

  1. Edge kullanıcı arayüzü günlüklerini (/opt/apigee/var/log/edge-ui/application.log ve /opt/apigee/var/log/edge-ui/edge-ui.log) kontrol edin ve hata olup olmadığına bakın.
  2. Apigee Edge Destek Ekibi ile iletişime geçin ve daha ayrıntılı inceleme için bu dosyaları paylaşın.

Teşhis Bilgileri Toplanmalıdır

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çip paylaşın:

  1. Komutun çıkışı:

    curl -v <management-server-host>:8080/v1/runtime/organizations/<org-name>/environments/<env-name>/apis/<apiproxy-name>/revisions/<revision-number>/debugsessions -u <user>
    
  2. Yönetim sunucusu günlüğü

    /opt/apigee/var/log/edge-management-server/logs/system.log.
    
  3. İleti işleyen günlükleri

    /opt/apigee/var/log/edge-message-processor/logs/system.log.
    
  4. Yönetim Sunucusu'ndan İleti İşleyen'e telnet/nc komutlarının çıkışı:

    telnet <MessageProcessor_IP> 8082
    nc -vz <MessageProcessor_IP> 8082
    
  5. Mesaj İşleyen(ler)de aşağıdaki netstat komutunun çıkışı:

    netstat -an > netstat.txt
    
  6. Edge kullanıcı arayüzünde sorun olduğu tespit edilirse /opt/apigee/var/log/edge-ui/application.log ve /opt/apigee/var/log/edge-ui/edge-ui.log. gibi Edge kullanıcı arayüzü günlüklerini sağlayın.

  7. Bu Başucu Kitabı'ndaki hangi bölümlerin denendiği ve bu sorunun çözümünü yavaşlatmamıza yardımcı olacak diğer bilgiler.