Çalışma zamanı hata kataloğu

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

Apigee Edge'deki hatalar

API istekleri Apigee Edge üzerinden yapıldığında Apigee Edge bileşenleri olan Yönlendiriciler ve Mesaj İşleyiciler ya da arka uç sunucular, istemci uygulamalarına hatalar döndürebilir.

Mesaj işleyiciden gelen hatalar

İleti İşleyici, politikaları işleyen ve arka uç sunucularla etkileşime giren Apigee Edge'in temel bileşenidir. Aşağıdaki gibi sorunlar algılarsa hata döndürebilir:

  • Ağ bağlantısı sorunları, TLS el sıkışması hataları, arka uç sunucusunun kullanılamaması, arka uç sunucusuyla iletişim sırasında yanıt alınamaması
  • Politika yürütme sırasında hatalar
  • Geçersiz HTTP üstbilgileri, kodlama, yol, HTTP spesifikasyonlarına uyulmaması, ürün sınırlarının aşılması vb.:
    • İstemci uygulamaları tarafından gönderilen HTTP isteğiyle
    • VEYA

    • Arka uç sunucusu tarafından gönderilen HTTP yanıtıyla
  • Ve daha fazlası

Mesaj işleyiciden örnek hata

Mesaj İşleyici her zaman bir HTTP durum kodu, ardından bir hata mesajı ve aşağıdaki örnekte gösterildiği gibi JSON biçiminde bir hata kodu döndürür:

İstemci uygulaması, aşağıdaki örneğe benzer bir yanıt kodu alır:

HTTP/1.1 414 Request-URI Too Long

Mesaj işleyiciden gelen hata yanıtı aşağıdaki biçimde görünür:

{
   "fault":{
      "faultstring":"request line size exceeding 7,168",
      "detail":{
         "errorcode":"protocol.http.TooBigLine"
      }
   }
}

Hata yanıtındaki alanların açıklaması:

Alan Açıklama
faultstring Hataya neden olabilecek olası durumu açıklayan hata mesajını içerir.
errorcode Hatayla ilişkili hata kodu (arıza kodu olarak da bilinir)

Çalışma zamanı hatası kataloğu

Bu hata kataloğu, Apigee Edge Message Processor bileşeni tarafından döndürülen çalışma zamanı hata kodları (politika dışı hatalar için) hakkında bilmeniz gereken tüm bilgileri sağlar. Her hata kodu için aşağıdaki bilgileri içerir:

  • HTTP durum kodu
  • Hata mesajı
  • Hatanın olası nedenleri
  • İlişkili HTTP spesifikasyonları ve/veya ürün sınırları
  • Hataya neden olan durumu teşhis etme talimatlarını içeren rehberler ve videolar ile hatayı kendiniz çözmek için uygulayabileceğiniz etkili çözümler (varsa)
  • Hatayı kendiniz çözmek için uygulayabileceğiniz düzeltme

Aşağıdaki hata kodu kategorileri ele alınmıştır:

Tabloyu filtreleyerek belirli bir hata koduyla ilgili yukarıdaki bilgileri göstermek için aşağıdaki Arama kutusunu kullanın. Tablodaki herhangi bir alanda durum kodunu veya herhangi bir içeriği arayabilirsiniz.

Hata kodu Açıklama Düzelt

flow.*

flow.APITimedOut

  • HTTP durum kodu:
504 Gateway Timeout
  • Hata mesajı:
API timed out
  • Olası neden:

Bu hata aşağıdaki durumlarda ortaya çıkar:

  • Arka uç sunucusu, belirli bir API proxy'si için mülk tarafından yapılandırılan zaman aşımı süresi içinde yanıt vermiyor. api.timeout
  • Politika, hesaplama açısından yoğun işlemler, yüksek yük veya düşük performans nedeniyle uzun sürüyor.

Not: Bu playbook, messaging.adaptors.http.flow.GatewayTimeout hata kodunu gidermeyle ilgili talimatlar sağlar. Bununla birlikte, flow.APITimedOut hata kodunu gidermek için de aynı playbook'u kullanabilirsiniz.

BAŞUCU KİTABI

flow.SharedFlowNotFound

  • HTTP durum kodu:
500 Internal Server Error
  • Hata mesajı:
Shared Flow {shared_flow_name} Not Found
  • Olası neden:

Bu hata, ilgili paylaşılan akış şu durumlarda oluşur:

  • Mevcut değil
  • VEYA

  • Var ancak dağıtılmamış
BAŞUCU KİTABI

messaging.adaptors.http.flow

messaging.adaptors.http.flow.ApplicationNotFound

  • HTTP durum kodu:
404 Not Found
  • Hata mesajı:
Unable to identify proxy for host: {virtual_host} and url: {pathsuffix}
  • Olası neden:

Bu hata, aşağıdaki senaryolardan birinde oluşur:

  1. Söz konusu API proxy'si:
    1. Belirli sanal ana makinede istekleri kabul edecek şekilde YAPILANDIRILMAMIŞ
    2. İstekte kullanılan belirli yolda istekleri kabul edecek şekilde YAPILANDIRILMAMIŞ
    3. API isteklerini yapmaya çalıştığınız belirli ortamda dağıtılmamış olması
    4. Bir veya daha fazla mesaj işleyicide dağıtılmamış
  2. API isteklerini yapmaya çalıştığınız belirli ortam, bir veya daha fazla Mesaj İşleyici'ye yüklenmemiş
BAŞUCU KİTABI
Bu hata, birden fazla sanal ana makine aynı ana makine takma adına ve bağlantı noktası numarasına sahip olduğunda da oluşabilir. BAŞUCU KİTABI

messaging.adaptors.http.flow.DecompressionFailureAtRequest

  • HTTP durum kodu:
400 Bad Request
  • Hata mesajı:
Decompression failure at request
  • Olası neden:

Bu hata yalnızca aşağıdaki durumlarda oluşur:

  • HTTP isteği başlığında belirtilen kodlama Content-Encoding geçerlidir ve Apigee Edge tarafından desteklenir.
  • BUT

  • İstemci tarafından HTTP isteğinin bir parçası olarak gönderilen yük biçimi, Content-Encoding başlığında belirtilen kodlama biçimiyle eşleşmiyor.
BAŞUCU KİTABI

messaging.adaptors.http.flow.DecompressionFailureAtResponse

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Decompression failure at response
  • Olası neden:

Bu hata yalnızca aşağıdaki durumlarda oluşur:

  • Arka uç/hedef sunucunun HTTP yanıt başlığında Content-Encoding belirtilen kodlama geçerlidir ve Apigee Edge tarafından desteklenir.
  • BUT

  • Arka uç/hedef sunucu tarafından HTTP yanıtının bir parçası olarak gönderilen yük biçimi, Content-Encoding başlığında belirtilen kodlama biçimiyle eşleşmiyor.
BAŞUCU KİTABI

messaging.adaptors.http.flow.ErrorResponseCode

  • HTTP durum kodu:
500

BAŞUCU KİTABI

VİDEO

  • Hata mesajı:
Hata mesajı ve biçimi, arka uç sunucusu uygulamasına bağlı olarak değişebilir.
  • Olası neden:
Bu hata, arka uç sunucusu Apigee Edge'e 500 durum koduyla yanıt verirse oluşur.
  • HTTP durum kodu:
503

BAŞUCU KİTABI

VİDEO

  • Hata mesajı:
Hata mesajı ve biçimi, arka uç sunucusu uygulamasına bağlı olarak değişebilir.
  • Olası neden:
Bu hata, arka uç sunucusu Apigee Edge'e 503 durum koduyla yanıt verirse oluşur.
  • HTTP durum kodu:
504 BAŞUCU KİTABI
  • Hata mesajı:
Hata mesajı ve biçimi, arka uç sunucusu uygulamasına bağlı olarak değişebilir.
  • Olası neden:
Bu hata, arka uç sunucusu Apigee Edge'e 504 durum koduyla yanıt verirse oluşur.

Not: messaging.adaptors.http.flow.ErrorResponseCode hata kodu, istemci uygulamalarına gönderilen hata mesajının bir parçası olarak döndürülmez. Bunun nedeni, arka uç sunucusu bir hatayla ve 4XX veya 5XX durum kodlarından biriyle yanıt verdiğinde bu hata kodunun Apigee Edge tarafından ayarlanmasıdır. Bu hata kodunu API izleme, NGINX erişim günlükleri veya analiz veritabanında görüntüleyebilirsiniz.

messaging.adaptors.http.flow.GatewayTimeout

  • HTTP durum kodu:
504 Gateway Timeout
  • Hata mesajı:
Gateway Timeout
  • Olası neden:
Bu hata, arka uç sunucusu Apigee Edge Message Processor'a Message Processor'da yapılandırılan I/O zaman aşımı süresi içinde yanıt vermediğinde oluşur.
BAŞUCU KİTABI

messaging.adaptors.http.flow.LengthRequired

  • HTTP durum kodu:
411 Length Required
  • Hata mesajı:
'Content-Length' is missing
  • Olası neden:

Bu hata, istemci uygulaması tarafından Apigee Edge'e gönderilen HTTP POST ve PUT isteklerinin bir parçası olarak Content-Length başlığı iletilmediğinde oluşur.

Not: Mesaj İşleyici bu doğrulamayı çok erken bir aşamada, isteği işlemeden ve API Proxy'de herhangi bir politikayı yürütmeden çok önce gerçekleştirdiğinden bu hatayla başarısız olan istekler İzleme aracında yakalanamaz.

  • HTTP Spesifikasyonu:
RFC Bölüm 3.3.2: Content-Length

Düzelt

Bu hatayı gidermek için aşağıdaki adımları uygulayın:

  1. İstemci uygulamasının, Apigee Edge'e gönderilen HTTP POST ve PUT isteklerinin bir parçası olarak her zaman Content-Length üstbilgisini ilettiğinden emin olun. Örneğin:

    curl -X POST https://HOSTALIAS/PATH -d '{"name": "abc"}' -H "Content-Length: 15"
    
  2. POST ve PUT istekleriyle boş bir yük aktarıyor olsanız bile Content-Length: 0 üstbilgisinin aktarıldığından emin olun. Örneğin:

    curl -X POST https://HOSTALIAS/PATH -H "Content-Length: 0"
    

messaging.adaptors.http.flow.NoActiveTargets

  • HTTP durum kodu:
503 Service Unavailable
  • Hata mesajı:
The Service is temporarily unavailable
  • Olası neden:

Bu hata, aşağıdaki senaryolardan birinde meydana gelir. Apigee Edge'de TargetServer kullanıyorsanız:

  1. Arka uç sunucu ana makinesinin özel yetkilendirme sunucusu tarafından yanlış DNS çözümü, bağlantı hatalarına yol açan kötü IP adresleriyle sonuçlandı.
  2. Aşağıdaki nedenlerden dolayı bağlantı zaman aşımı hataları oluşur:
    1. Arka uç sunucusundaki güvenlik duvarı kısıtlaması, Apigee Edge'in arka uç sunucusuna bağlanmasını engelliyor.
    2. Apigee Edge ile arka uç sunucusu arasındaki ağ bağlantısı sorunları.
  3. TargetServer'da belirtilen ana makine yanlış veya istenmeyen karakterler (ör. boşluk) içeriyor.

BAŞUCU KİTABI

VİDEO

Bu hata, hedef sunucuların durum denetimini izlemek için yapılandırılan durum denetimleri başarısız olduğunda da oluşabilir.

BAŞUCU KİTABI

VİDEO

messaging.adaptors.http.flow.RequestTimeOut

  • HTTP durum kodu:
408 Request Timeout
  • Hata mesajı:
Request timed out
  • Olası neden:
Bu hata, Apigee Edge Message Processor, Message Processor bileşeninde yapılandırılan I/O zaman aşımı süresi için istemci uygulamasından istek yükünü almadığında oluşur.

Düzelt

İstemci uygulamasının, isteği Apigee Edge'in Mesaj İşleyici bileşeninde yapılandırılan I/O zaman aşımı süresi içinde gönderdiğinden emin olun.

messaging.adaptors.http.flow.ServiceUnavailable

  • HTTP durum kodu:
503 Service Unavailable
  • Hata mesajı:
The Service is temporarily unavailable
  • Olası neden:

Bu hata, aşağıdaki senaryolardan birinde oluşur:

  1. Özel yetkilendirme sunucusu tarafından arka uç sunucunun ana makinesinin yanlış DNS çözümü, bağlantı hatalarına yol açan kötü IP adresleriyle sonuçlandı.
  2. Aşağıdakiler nedeniyle bağlantı zaman aşımı hataları:
    1. Arka uç sunucusundaki güvenlik duvarı kısıtlaması, Apigee Edge'in arka uç sunucusuna bağlanmasını engelliyor.
    2. Apigee Edge ile arka uç sunucusu arasındaki ağ bağlantısı sorunları.
  3. Hedef uç noktada belirtilen hedef sunucu ana makinesi yanlış veya istenmeyen karakterler (ör. boşluk) içeriyor.

BAŞUCU KİTABI

DNS hatası:

VİDEO

Ağ bağlantısı:

VİDEO

Bu hata, Mesaj İşleyici istek yükünü arka uç sunucusuna göndermeye devam ederken arka uç sunucusunun bağlantıyı erken kapatması durumunda da oluşabilir. BAŞUCU KİTABI

messaging.adaptors.http.flow.SslHandshakeFailed

  • HTTP durum kodu:
503 Service Unavailable
  • Hata mesajı:
SSL Handshake failed {error_message}
  • Olası neden:

Bu hata, Apigee Edge'in Mesaj İşlemcisi ile arka uç sunucusu arasındaki SSL anlaşması sırasında şu durumlarda oluşur:

  1. Apigee Edge'in Mesaj İşlemcisinin güvenli deposu:
    • Arka uç sunucusunun tam sertifika zinciriyle eşleşmeyen bir sertifika zinciri içeriyor.
    • VEYA

    • Arka uç sunucusunun tam sertifika zincirini içermiyor
  2. Arka uç sunucusu tarafından sunulan sertifika zinciri:
    • Hedef uç noktada belirtilen ana makine adıyla eşleşmeyen bir tam nitelikli alan adı (FQDN) içeriyor.
    • VEYA

    • Yanlış/eksik sertifika zinciri içeriyor

BAŞUCU KİTABI

VIDEO

messaging.adaptors.http.flow.UnexpectedEOFAtTarget

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Unexpected EOF at target
  • Olası neden:

Bu hata, aşağıdaki senaryolardan birinde oluşur:

  1. TargetServer, Apigee Edge'de TLS/SSL bağlantılarını destekleyecek şekilde düzgün yapılandırılmamış.
  2. Arka uç sunucusu, Apigee Edge arka uç sunucusundan yanıt beklerken bağlantıyı aniden kapatabilir.
  3. Apigee ve arka uç sunucusunda keep-alive zaman aşımları yanlış yapılandırılmış.
BAŞUCU KİTABI

messaging.runtime.*

messaging.runtime.RouteFailed

  • HTTP durum kodu:
500 Internal Server Error
  • Hata mesajı:
Unable to route the message to a TargetEndpoint
  • Olası neden:

Bu hata, Apigee Edge isteği aşağıdaki nedenlerle TargetEndpoints'lerden herhangi birine yönlendiremediğinde oluşur:

  • Bir proxy'de istekle eşleşen rota kuralı (<RouteRule>) koşulu yok
  • VE

  • ProxyEndpoint'te varsayılan bir rota kuralı tanımlanmamış (ör. <RouteRule> koşulsuz)

Düzelt

Bu hatayı düzeltmek için aşağıdaki talimatları uygulayın:

  1. ProxyEndpoint'inizde tanımlanan rota kurallarını inceleyin ve isteğinizle eşleşen en az bir rota kuralı koşulu olduğundan emin olmak için bunları değiştirin.
  2. Birden fazla RouteRule'unuz olduğunda koşul içermeyen bir varsayılan rota kuralı tanımlamanız önerilir.
  3. Kurallar ProxyEndpoint'te yukarıdan aşağıya doğru değerlendirildiğinden, koşullu rotalar listesinde varsayılan rota kuralının her zaman en son tanımlandığından emin olun.

ProxyEndpoint'te <RouteRule> koşulları tanımlama hakkında daha fazla bilgi edinmek için Koşullu Hedefler bölümüne bakın.

messaging.runtime.SenseRaiseFault

  • HTTP durum kodu:
403 Forbidden
  • Hata mesajı:
Sense Fault
  • Olası neden:
Bu hata, Apigee Sense kuralları kapsamında engellenen belirli bir istemci IP adresinden API isteği gönderilirse oluşur.

Düzelt

Bu hatayı düzeltmek için aşağıdaki talimatları uygulayın:

  1. Apigee Sense'te yapılandırılan kuralları kontrol ederek belirli istemci IP adresini engellediğinizi doğrulayın. Engellenmişse bu, özelliğin tasarlandığı şekilde çalıştığını gösterir.
  2. Belirli istemci IP adresi engellenmemiş olmasına rağmen bu hatayı almaya devam ediyorsanız Apigee Edge Destek Ekibi ile iletişime geçin.

protocol.http.* - Caused due to bad request

protocol.http.BadFormData

  • HTTP durum kodu:
500 Internal Server Error
  • Hata mesajı:
Bad Form Data
  • Olası neden:

Bu hata yalnızca aşağıdaki koşulların tümü karşılandığında oluşur:

  1. İstemci tarafından Apigee Edge'e gönderilen HTTP isteği şunları içerir:
    • Content-Type: application/x-www-form-urlencoded, ve
    • Yüzde işareti (%) içeren veya yüzde işareti (%) ile başlayan ve Formlar - Bölüm 17.13.4.1'e göre izin verilmeyen geçersiz onaltılık karakterler içeren form verileri.
  2. Apigee Edge'deki API proxy'si, istek akışında ExtractVariables veya AssignMessage politikası kullanılarak izin verilmeyen karakterleri içeren belirli form parametrelerini okur.
BAŞUCU KİTABI

protocol.http.DuplicateHeader

  • HTTP durum kodu:
400 Bad Request
  • Hata mesajı:
Duplicate Header "{header_name}"
  • Olası neden:
Bu hata, Apigee Edge'de yinelenmesine izin verilmeyen belirli bir HTTP üstbilgisi, istemci uygulaması tarafından Apigee Edge'e gönderilen HTTP isteğinin bir parçası olarak aynı veya farklı değerlerle birden fazla kez görünürse oluşur.
  • HTTP Spesifikasyonu:
RFC 7230, bölüm 3.2.2: Alan Sırası
BAŞUCU KİTABI

protocol.http.EmptyHeaderName

  • HTTP durum kodu:
400 Bad Request
  • Hata mesajı:
Header name cannot be empty
  • Olası neden:
Bu hata, istemci uygulaması tarafından Apigee Edge'e HTTP isteğinin bir parçası olarak gönderilen başlık adı boşsa oluşur.
  • HTTP Spesifikasyonu:
RFC 7230, bölüm 3.2: Üst Bilgi Alanları

Düzelt

İstemci uygulaması tarafından Apigee Edge'e gönderilen HTTP isteğinin her zaman RFC 7230, bölüm 3.2: Üst Bilgi Alanları uyarınca geçerli bir üst bilgi adı içerdiğinden emin olun.

protocol.http.HeaderNameWithNonAsciiChar

  • HTTP durum kodu:
400 Bad Request
  • Hata mesajı:
Header {header_name} contains non ascii character {character}
  • Olası neden:
Bu hata, istemci uygulaması tarafından Apigee Edge'e HTTP isteğinin bir parçası olarak gönderilen üstbilgi adı ASCII dışı karakterler içerdiğinde oluşur.
  • HTTP Spesifikasyonu:

RFC 7230, bölüm 3.2: Üst Bilgi Alanları ve RFC 7230, bölüm 3.2.6: Alan Değeri Bileşenleri

Düzelt

Apigee Edge'e gönderilen istemcinin HTTP isteğinin, RFC 7230, bölüm 3.2.6: Alan Değeri Bileşenleri uyarınca üst bilgi adlarında ASCII dışı karakterler içermediğinden emin olun.

protocol.http.HeaderWithInvalidChar

  • HTTP durum kodu:
400 Bad Request
  • Hata mesajı:
Header {header_name} contains invalid character {character}
  • Olası neden:
Bu hata, istemci uygulaması tarafından Apigee Edge'e gönderilen HTTP isteğinin bir parçası olarak gönderilen başlık adında eşittir (=), virgül (,), noktalı virgül (;), sekme, CRLF ve yeni satır karakteri gibi geçersiz karakterler varsa oluşur.
  • HTTP Spesifikasyonu:

RFC 7230, bölüm 3.2: Üst Bilgi Alanları ve RFC 7230, bölüm 3.2.6: Alan Değeri Bileşenleri

Düzelt

İstemci uygulaması tarafından Apigee Edge'e gönderilen HTTP isteğinin, RFC 7230, bölüm 3.2.6: Alan Değeri Bileşenleri uyarınca üst bilgi adlarında geçersiz karakterler içermediğinden emin olun.

protocol.http.InvalidPath

  • HTTP durum kodu:
400 Bad Request
  • Hata mesajı:
Invalid path {path}
  • Olası neden:
Bu hata, istemci uygulaması tarafından Apigee Edge'e gönderilen HTTP isteği URL'sindeki yolda, RFC 3986 bölüm 3.3: Yol spesifikasyonuna göre izin verilmeyen karakterler varsa oluşur.
  • HTTP Spesifikasyonu:

RFC 3986, bölüm 3: Söz Dizimi Bileşenleri ve RFC 3986, bölüm 3.3: Yol

Düzelt

İstemci uygulaması tarafından Apigee Edge'e gönderilen HTTP isteği URL'sindeki yolun, RFC 3986, bölüm 3.3: Yol uyarınca izin verilmeyen karakterler içermediğinden emin olun.

protocol.http.MessageReadError

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Unexpected I/O after message headers have been read.
  • Olası neden:
Bu nadir hata, MP'nin bir kanalda beklenmedik bir G/Ç alması durumunda oluşur. MP bir isteği okuyor, tüm başlıkları okumuş ve istek yükünü okumaya ayarlanmış. Ardından, aynı başlıklar için olduğu anlaşılan bir G/Ç etkinliğiyle karşılaşır.

Düzelt

Ne olduğu hakkında daha fazla bilgi için günlük mesajını bulun.

logger.atSevere().log(
    "Unexpected I/O after message headers have been read. Channel diagnostics=%s."
        + " HeartBeat=%s",
    input.client().getDiagnostic(), message.getHeaders().isHeartBeat());
                

protocol.http.TooBigBody

  • HTTP durum kodu:
413 Request Entity Too Large
  • Hata mesajı:
Body buffer overflow
  • Olası neden:
Bu hata, istemci uygulaması tarafından Apigee Edge'e HTTP isteği kapsamında gönderilen yük boyutu, Apigee Edge'de izin verilen sınırı aştığında oluşur.
  • Sınırlar:
Apigee Edge Sınırları
BAŞUCU KİTABI

protocol.http.TooBigHeaders

  • HTTP durum kodu:
431 Request Header Fields Too Large
  • Hata mesajı:
request headers size exceeding {limit}
  • Olası neden:
İstemci uygulaması tarafından Apigee Edge'e HTTP isteği kapsamında gönderilen tüm istek başlıklarının toplam boyutu, Apigee Edge'deki izin verilen sınırı aşıyor.
  • HTTP Spesifikasyonu:
RFC 6585, bölüm 5: 431 İstek Üstbilgisi Alanları Çok Büyük
  • Sınırlar:
Apigee Edge Sınırları
BAŞUCU KİTABI

protocol.http.TooBigLine

  • HTTP durum kodu:
414 Request-URI Too Long
  • Hata mesajı:
request line size exceeding {limit}
  • Olası neden:
Bu hata, istemci uygulaması tarafından Apigee Edge'e HTTP isteğinin bir parçası olarak gönderilen istek satırının boyutu Apigee Edge'deki izin verilen sınırı aştığında oluşur.
  • Sınırlar:
Apigee Edge Sınırları
BAŞUCU KİTABI

protocol.http.UnsupportedEncoding

  • HTTP durum kodu:
415 Unsupported Media
  • Hata mesajı:
Unsupported Encoding "{encoding}"
  • Olası neden:
Bu hata, istemci tarafından HTTP yanıtının bir parçası olarak gönderilen Content-Encoding başlığı, Apigee Edge tarafından desteklenmeyen bir kodlama/yük biçimi içeriyorsa oluşur.
  • HTTP Spesifikasyonu:
RFC 7231, bölüm 6.5.13: 415 Desteklenmeyen Ortam Türü
BAŞUCU KİTABI

protocol.http.* - Caused by target

protocol.http.BadPath

  • HTTP durum kodu:
500 Internal Server Error
  • Hata mesajı:
Invalid request path
  • Olası neden:
Bu hata, akış değişkeni target.url ile temsil edilen arka uç sunucusunun istek URL'si, geçersiz olan eğik çizgi (/) yerine soru işareti (?) ile başlayan bir yol içerdiğinde oluşur.
  • HTTP Spesifikasyonu:

RFC 3986, bölüm 3: Söz Dizimi Bileşenleri ve RFC 3986, bölüm 3.3: Yol

BAŞUCU KİTABI

protocol.http.DuplicateHeader

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Duplicate Header "{header_name}"
  • Olası neden:
Bu hata, Apigee Edge'de yinelenmesine izin verilmeyen belirli HTTP üstbilgisi, arka uç sunucusu tarafından Apigee Edge'e gönderilen HTTP yanıtının bir parçası olarak aynı veya farklı değerlerle birden fazla kez görünürse oluşur.
  • HTTP Spesifikasyonu:
RFC 7230, bölüm 3.2.2: Alan Sırası
BAŞUCU KİTABI

protocol.http.EmptyHeaderName

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Header name cannot be empty
  • Olası neden:
Bu hata, arka uç sunucusu tarafından Apigee Edge'e HTTP yanıtının bir parçası olarak gönderilen üst bilgi adı boşsa oluşur.
  • HTTP Spesifikasyonu:
RFC 7230, bölüm 3.2: Üst Bilgi Alanları

Düzelt

Arka uç sunucusu tarafından Apigee Edge'e gönderilen HTTP yanıtının her zaman RFC 7230, bölüm 3.2: Üst Bilgi Alanları uyarınca geçerli bir üst bilgi adı içerdiğinden emin olun.

protocol.http.EmptyPath

  • HTTP durum kodu:
500 Internal Server Error
  • Hata mesajı:
Request path cannot be empty
  • Olası neden:
Bu hata, akış değişkeni target.url ile gösterilen arka uç sunucusunun HTTP isteği URL'si boş bir yol içerdiğinde oluşur.
  • HTTP Spesifikasyonu:

RFC 3986, bölüm 3: Söz Dizimi Bileşenleri ve RFC 3986, bölüm 3.3: Yol

BAŞUCU KİTABI

protocol.http.HeaderNameWithNonAsciiChar

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Header {header_name} contains non ascii character {character}
  • Olası neden:
Bu hata, arka uç sunucusu tarafından Apigee Edge'e verilen HTTP yanıtının bir parçası olarak gönderilen başlık adında ASCII dışı karakterler varsa oluşur.
  • HTTP Spesifikasyonu:

RFC 7230, bölüm 3.2: Üst Bilgi Alanları ve RFC 7230, bölüm 3.2.6: Alan Değeri Bileşenleri

Düzelt

Arka uç sunucusunun Apigee Edge'e gönderdiği HTTP yanıtının, RFC 7230, bölüm 3.2.6: Alan Değeri Bileşenleri uyarınca başlık adlarında ASCII olmayan karakterler içermediğinden emin olun.

protocol.http.HeaderWithInvalidChar

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Header {header_name} contains invalid character {character}
  • Olası neden:
Bu hata, arka uç sunucusu tarafından HTTP yanıtının bir parçası olarak gönderilen başlık adı; eşittir (=), virgül (,), noktalı virgül (;), sekme, CRLF ve yeni satır karakteri gibi geçersiz karakterler içerdiğinde oluşur.
  • HTTP Spesifikasyonu:

RFC 7230, bölüm 3.2: Üst Bilgi Alanları ve RFC 7230, bölüm 3.2.6: Alan Değeri Bileşenleri

Düzelt

Arka uç sunucusunun Apigee Edge'e gönderdiği HTTP yanıtının, RFC 7230, bölüm 3.2.6: Alan Değeri Bileşenleri uyarınca üst bilgi adlarında geçersiz karakterler içermediğinden emin olun.

protocol.http.ProxyTunnelCreationFailed

  • HTTP durum kodu:
503 Service Unavailable
  • Hata mesajı:
Proxy refused to create tunnel with response status {status code}
  • Olası neden:

Bu hata, güvenlik duvarı, ACL (Erişim Kontrol Listesi), DNS sorunları, arka uç sunucusunun kullanılabilirliği vb. nedenlerle proxy sunucusu tarafından Apigee Edge ile arka uç sunucusu arasında tünel oluşturulurken meydana gelir.

Not: Hata mesajındaki durum kodu (faultstring), sorunun üst düzey nedenini sağlar.

BAŞUCU KİTABI

protocol.http.Response306Reserved

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Response Status code 306 is reserved, so can't be used.
  • Olası neden:

Bu hata, arka uç sunucusu Apigee Edge'e 306 durum koduyla yanıt verdiğinde oluşur.

306 durum kodu, HTTP spesifikasyonunun önceki bir sürümünde tanımlanmıştır. Mevcut HTTP spesifikasyonuna göre bu kod ayrılmıştır ve kullanılmamalıdır.

  • HTTP Spesifikasyonu:
RFC 7231, bölüm 6.3.5: 306 Reserved

Düzelt

Durum kodu 306 ayrılmış olduğundan arka uç sunucunuzun Apigee Edge'e yanıt gönderirken bu durum kodunu kullanmadığından emin olun.

protocol.http.Response405WithoutAllowHeader

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Received 405 Response without Allow Header
  • Olası neden:
Arka uç sunucusu, "Allow" başlığı olmadan 405 Method Not Allowed durum koduyla yanıt veriyor.
  • HTTP Spesifikasyonu:

RFC 7231, bölüm 6.5.5: 405 Method Not Allowed ve RFC 7231, bölüm 7.4.1: Allow

BAŞUCU KİTABI

protocol.http.ResponseWithBody

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Received {status_code} Response with message body
  • Olası neden:

Bu hata, arka uç sunucusundan Apigee Edge'e gelen HTTP yanıtı 204 No Content veya 205 Reset Content ise ancak yanıt gövdesini ve/veya aşağıdaki üst bilgilerden birini ya da daha fazlasını içeriyorsa oluşur:

  • Content-Length
  • Content-Encoding
  • Transfer-Encoding
  • HTTP Spesifikasyonu:

RFC 7231, bölüm 6.3.5: 204 No Content ve RFC 7231, bölüm 6.3.6: 205 Reset Content

BAŞUCU KİTABI

protocol.http.TooBigBody

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
Body buffer overflow
  • Olası neden:
Bu hata, istemci uygulaması tarafından Apigee Edge'e HTTP isteği kapsamında gönderilen yük boyutu, Apigee Edge'de izin verilen sınırı aştığında oluşur.
  • Sınırlar:
Apigee Edge Sınırları
BAŞUCU KİTABI

protocol.http.TooBigHeaders

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
response headers size exceeding {limit}
  • Olası neden:
Bu hata, arka uç sunucusu tarafından Apigee Edge'e HTTP yanıtının bir parçası olarak gönderilen tüm yanıt başlıklarının toplam boyutu, Apigee Edge'de izin verilen sınırı aştığında oluşur.
  • Sınırlar:
Apigee Edge Sınırları
BAŞUCU KİTABI

protocol.http.TooBigLine

  • HTTP durum kodu:
502 Bad Gateway
  • Hata mesajı:
response line size exceeding {limit}
  • Olası neden:
Bu hata, arka uç sunucusu tarafından Apigee Edge'e HTTP yanıtının bir parçası olarak gönderilen yanıt satırının boyutu, Apigee Edge'de izin verilen sınırı aştığında oluşur.
  • Sınırlar:
Apigee Edge Sınırları
BAŞUCU KİTABI

protocol.http.UnsupportedEncoding

  • HTTP durum kodu:
415 Unsupported Media
  • Hata mesajı:
Unsupported Encoding "{encoding}"
  • Olası neden:
Bu hata, HTTP yanıtının bir parçası olarak arka uç sunucusu tarafından gönderilen Content-Encoding üstbilgisi, Apigee Edge tarafından desteklenmeyen bir kodlama/yük biçimi içeriyorsa oluşur.
  • HTTP Spesifikasyonu:
RFC 7231, bölüm 6.5.13: 415 Desteklenmeyen Ortam Türü
BAŞUCU KİTABI

security.util.*

security.util.KeyAliasNotFound

  • HTTP durum kodu:
500 Internal Server Error
  • Hata mesajı:
KeyAlias {KeyAlias_name} is not found in Keystore {Keystore_Name}
  • Olası neden:

Bu hata, TargetEndpoint veya TargetServer'da başvurulan KeyAlias'ın belirli bir Keystore'da bulunmaması durumunda oluşur.

Düzelt

TargetEndpoint veya TargetServer'da belirtilen KeyAlias'ın mevcut olduğundan ve belirli bir anahtar deposunun parçası olduğundan emin olun.

security.util.TrustStoreWithNoCertificates

  • HTTP durum kodu:
500 Internal Server Error
  • Hata mesajı:
TrustStore {truststore_name} has no certificates
  • Olası neden:

Bu hata, TargetEndpoint veya TargetServer'da başvurulan belirli Truststore'da sertifika yoksa oluşur.

Düzelt

Arka uç sunucusunun sertifikasını doğrulamak ve bir TargetEndpoint veya TargetServer'da güvenilir sertifika deposunu kullanmak istiyorsanız güvenilir sertifika deposunun arka uç sunucusunun geçerli sertifikalarını içerdiğinden emin olun.