Katalog błędów środowiska wykonawczego

Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
info

Błędy w Apigee Edge

Gdy żądania do interfejsu API są wysyłane przez Apigee Edge, routery komponentów Apigee Edge i procesory wiadomości lub serwery backendu mogą zwracać błędy aplikacjom klienckim.

Błędy z procesora wiadomości

Procesor wiadomości to podstawowy komponent Apigee Edge, który przetwarza zasady i wchodzi w interakcje z serwerami backendu. Może zwracać błędy, jeśli wykryje problemy, takie jak:

  • Problemy z połączeniem sieciowym, błędy uzgadniania TLS, niedostępność serwera backendu, brak odpowiedzi podczas komunikacji z serwerem backendu
  • Błędy podczas wykonywania zasad
  • Nieprawidłowe nagłówki HTTP, kodowanie, ścieżka, niezgodność ze specyfikacją HTTP, przekroczenie limitów produktów itp.:
    • z żądaniem HTTP wysłanym przez aplikacje klienta;
    • LUB

    • z odpowiedzią HTTP wysłaną przez serwer backendu.
  • I wiele więcej

Przykładowy błąd z przetwarzacza wiadomości

Przetwarzacz wiadomości zawsze zwraca kod stanu HTTP, a potem komunikat o błędzie z kodem błędu w formacie JSON, jak pokazano poniżej:

Aplikacja kliencka otrzymuje kod odpowiedzi podobny do tego:

HTTP/1.1 414 Request-URI Too Long

Odpowiedź o błędzie z procesora wiadomości ma następujący format:

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

Opis pól w odpowiedzi na błąd:

Pole Opis
faultstring Zawiera komunikat o błędzie opisujący jego możliwą przyczynę
errorcode Kod błędu (zwany też kodem błędu) związany z błędem

Katalog błędów środowiska wykonawczego

Ten katalog błędów zawiera wszystkie informacje o kodach błędów środowiska wykonawczego (w przypadku błędów niezwiązanych z zasadami), które są zwracane przez komponent procesora Apigee Edge Edge. Zawiera on te informacje o każdym kodzie błędu:

  • Kod stanu HTTP
  • Komunikat o błędzie
  • Możliwe przyczyny błędu
  • wszelkie powiązane specyfikacje HTTP lub limity produktów;
  • Poradniki i filmy zawierające instrukcje diagnozowania przyczyny błędu oraz skuteczne rozwiązania, które możesz zastosować, aby samodzielnie rozwiązać problem (jeśli są dostępne).
  • Popraw, który możesz zastosować, aby samodzielnie naprawić błąd

Obejmuje to te kategorie kodów błędów:

Aby wyświetlić powyższe informacje dotyczące konkretnego kodu błędu, użyj pola Wyszukaj poniżej. Kod stanu lub dowolne treści możesz wyszukać w dowolnym polu w tabeli.

Kod błędu Opis Napraw

flow.*

flow.APITimedOut

  • Kod stanu HTTP:
504 Gateway Timeout
  • Komunikat o błędzie:
API timed out
  • Możliwa przyczyna:

Ten błąd występuje, jeśli:

  • Serwer backendu nie odpowiada po upływie limitu czasu ustawionego przez właściwość api.timeout dla określonego serwera proxy interfejsu API.
  • Zasady są długo przetwarzane z powodu operacji wymagających dużej mocy obliczeniowej, dużego obciążenia lub niskiej wydajności.

Uwaga: ten poradnik zawiera instrukcje rozwiązywania problemów z kodem błędu messaging.adaptors.http.flow.GatewayTimeout, ale możesz go też użyć do rozwiązania problemów z kodem błędu flow.APITimedOut.

PORADNIK

flow.SharedFlowNotFound

  • Kod stanu HTTP:
500 Internal Server Error
  • Komunikat o błędzie:
Shared Flow {shared_flow_name} Not Found
  • Możliwa przyczyna:

Ten błąd występuje, jeśli określony przepływ udostępniania:

  • Nie istnieje
  • LUB

  • istnieje, ale nie jest wdrożona;
PORADNIK

messaging.adaptors.http.flow

messaging.adaptors.http.flow.ApplicationNotFound

  • Kod stanu HTTP:
404 Not Found
  • Komunikat o błędzie:
Unable to identify proxy for host: {virtual_host} and url: {pathsuffix}
  • Możliwa przyczyna:

Ten błąd występuje w jednym z tych scenariuszy:

  1. Konkretny proxy interfejsu API:
    1. NIE skonfigurowano do akceptowania żądań na konkretnym hostie wirtualnym
    2. NIE skonfigurowano do akceptowania żądań na określonym ścieżce użytej w żądaniu
    3. NIE jest wdrożony w określonym środowisku, w którym próbujesz wysyłać żądania do interfejsu API
    4. NIE wdrożony na co najmniej 1 procesorze wiadomości
  2. konkretne środowisko, w którym próbujesz wysyłać żądania interfejsu API, nie jest wczytane na co najmniej 1 procesorze wiadomości;
PLAYBOOK
Ten błąd może też wystąpić, jeśli wiele hostów wirtualnych ma ten sam alias hosta i numer portu. PORADNIK

messaging.adaptors.http.flow.DecompressionFailureAtRequest

  • Kod stanu HTTP:
400 Bad Request
  • Komunikat o błędzie:
Decompression failure at request
  • Możliwa przyczyna:

Ten błąd występuje tylko wtedy, gdy:

  • Kodowanie określone w nagłówku żądania HTTP Content-Encoding jest prawidłowe i obsługiwane przez Apigee Edge,
  • ALE

  • Format danych przesłanych przez klienta w ramach żądania HTTP nie jest zgodny z formatem kodowania określonym w nagłówku Content-Encoding
PORADNIK

messaging.adaptors.http.flow.DecompressionFailureAtResponse

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Decompression failure at response
  • Możliwa przyczyna:

Ten błąd występuje tylko wtedy, gdy:

  • Kodowanie określone w nagłówku odpowiedzi HTTP Content-Encoding serwera docelowego lub serwera backendu jest prawidłowe i obsługiwane przez Apigee Edge,
  • ALE

  • Format danych przesłanych przez backend lub serwer docelowy jako część odpowiedzi HTTP nie pasuje do formatu kodowania określonego w nagłówku Content-Encoding
PORADNIK

messaging.adaptors.http.flow.ErrorResponseCode

  • Kod stanu HTTP:
500

PLAYBOOK

FILM

  • Komunikat o błędzie:
Komunikat i format błędu mogą się różnić w zależności od implementacji serwera backendu.
  • Możliwa przyczyna:
Ten błąd występuje, gdy serwer backendu odpowiada kodowi stanu 500 na Apigee Edge.
  • Kod stanu HTTP:
503

PLAYBOOK

FILM

  • Komunikat o błędzie:
Komunikat i format błędu mogą się różnić w zależności od implementacji serwera backendu.
  • Możliwa przyczyna:
Ten błąd występuje, gdy serwer zaplecza odpowiada kodem stanu 503 do Apigee Edge.
  • Kod stanu HTTP:
504 PLAYBOOK
  • Komunikat o błędzie:
Komunikat i format błędu mogą się różnić w zależności od implementacji serwera backendu.
  • Możliwa przyczyna:
Ten błąd występuje, gdy serwer zaplecza odpowiada kodem stanu 504 do Apigee Edge.

Uwaga: kod błędu messaging.adaptors.http.flow.ErrorResponseCode nie jest zwracany jako część komunikatu o błędzie wysyłanego do aplikacji klienckich. Dzieje się tak, ponieważ ten kod błędu jest ustawiany przez Apigee Edge, gdy serwer backendowy odpowiada z błędem i dowolnym z kodów stanu 4XX lub 5XX. Ten kod błędu możesz wyświetlić w usłudze API Monitoring, logach dostępu NGINX lub analitycznej bazie danych.

messaging.adaptors.http.flow.GatewayTimeout

  • Kod stanu HTTP:
504 Gateway Timeout
  • Komunikat o błędzie:
Gateway Timeout
  • Możliwa przyczyna:
Ten błąd występuje, jeśli serwer backendu nie odpowie na procesor komunikatów brzegowych Apigee w czasie oczekiwania na operacje wejścia-wyjścia skonfigurowanym w procesorze wiadomości.
PORADNIK

messaging.adaptors.http.flow.LengthRequired

  • Kod stanu HTTP:
411 Length Required
  • Komunikat o błędzie:
'Content-Length' is missing
  • Możliwa przyczyna:

Ten błąd występuje, jeśli aplikacja kliencka nie przekazuje nagłówka Content-Length w ramach żądań HTTP POST i PUT wysyłanych do Apigee Edge.

Uwaga: żądań, które zakończyły się niepowodzeniem z powodu tego błędu, nie można zarejestrować w narzędziu Śledzenie, ponieważ procesor wiadomości wykonuje tę weryfikację na bardzo wczesnym etapie, znacznie wcześniej niż przetworzenie żądania i wykonywanie jakichkolwiek zasad w interfejsie API Proxy.

  • Specyfikacja HTTP:
RFC Sekcja 3.3.2: Content-Length

Napraw

Aby rozwiązać ten problem, wykonaj te czynności:

  1. Upewnij się, że aplikacja kliencka zawsze przekazuje nagłówek Content-Length w ramach żądań HTTP POSTPUT wysyłanych do Apigee Edge. Na przykład:

    curl -X POST https://HOSTALIAS/PATH -d '{"name": "abc"}' -H "Content-Length: 15"
    
  2. Nawet jeśli w żądaniach POST i PUT przekazujesz pusty ładunek, upewnij się, że nagłówek Content-Length: 0 jest przekazywany. Na przykład:

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

messaging.adaptors.http.flow.NoActiveTargets

  • Kod stanu HTTP:
503 Service Unavailable
  • Komunikat o błędzie:
The Service is temporarily unavailable
  • Możliwa przyczyna:

Ten błąd występuje w jednym z tych scenariuszy, jeśli używasz TargetServer w Apigee Edge:

  1. Niewłaściwe rozpoznawanie nazw DNS hosta serwera backendu przez niestandardowy serwer autoryzacji spowodowało wystąpienie nieprawidłowych adresów IP, co prowadziło do błędów połączenia.
  2. Błędy limitu czasu połączenia z powodu:
    1. Ograniczenie zapory sieciowej na serwerze backendu uniemożliwia Apigee Edge nawiązanie połączenia z serwerem backendu.
    2. Problemy z połączeniem sieciowym między Apigee Edge a serwerem backendu.
  3. Host podany w sekcji TargetServer jest nieprawidłowy lub zawiera niepożądane znaki (np. spację).

PORADNIK

FILM

Ten błąd może też wystąpić, jeśli kontrola stanu skonfigurowana do monitorowania kontroli stanu serwerów docelowych nie powiedzie się.

PORADNIK

FILM

messaging.adaptors.http.flow.RequestTimeOut

  • Kod stanu HTTP:
408 Request Timeout
  • Komunikat o błędzie:
Request timed out
  • Możliwa przyczyna:
Ten błąd występuje, gdy procesor wiadomości Apigee Edge nie otrzyma ładunku żądania z aplikacji klienta w  okresie limitu czasu operacji wejścia/wyjścia skonfigurowanym w komponencie procesora wiadomości.

Napraw

Upewnij się, że aplikacja klienta wysyła ładunek żądania w  okresie limitu czasu operacji wejścia/wyjścia skonfigurowanym w komponencie procesora wiadomości Apigee Edge.

messaging.adaptors.http.flow.ServiceUnavailable

  • Kod stanu HTTP:
503 Service Unavailable
  • Komunikat o błędzie:
The Service is temporarily unavailable
  • Możliwa przyczyna:

Ten błąd występuje w jednym z tych scenariuszy:

  1. Niewłaściwe rozpoznawanie nazw DNS hosta serwera backendu przez niestandardowy serwer autoryzacji spowodowało wystąpienie nieprawidłowych adresów IP, co prowadziło do błędów połączenia.
  2. Błędy związane z upływem czasu oczekiwania na połączenie:
    1. Ograniczenie zapory sieciowej na serwerze backendu uniemożliwia połączenie Apigee Edge z serwerem backendu.
    2. Problemy z połączeniem sieciowym między Apigee Edge a serwerem zaplecza.
  3. Host serwera docelowego podany w sekcji Punkt końcowy docelowy jest nieprawidłowy lub zawiera niepożądane znaki (np. spację).

PLAYBOOK

Błąd wyszukiwania DNS:

FILM

Połączenia sieciowe:

FILM

Ten błąd może też wystąpić, jeśli serwer backendu przedwcześnie zamknie połączenie, gdy procesor wiadomości nadal wysyła ładunek żądania do serwera backendu. PORADNIK

messaging.adaptors.http.flow.SslHandshakeFailed

  • Kod stanu HTTP:
503 Service Unavailable
  • Komunikat o błędzie:
SSL Handshake failed {error_message}
  • Możliwa przyczyna:

Ten błąd występuje podczas uzgadniania połączenia SSL między procesorem komunikatów Apigee Edge a serwerem backendu, jeśli:

  1. Zaufane repozytorium procesora wiadomości Apigee Edge:
    • Zawiera łańcuch certyfikatów, który nie pasuje do pełnego łańcucha certyfikatów serwera backendu
    • LUB

    • nie zawiera pełnego łańcucha certyfikatów serwera zaplecza;
  2. Łańcuch certyfikatów przedstawiony przez serwer zaplecza:
    • zawiera pełną i jednoznaczną nazwę domeny (FQDN), która nie odpowiada nazwie hosta określonej w docelowym punkcie końcowym
    • LUB

    • zawiera nieprawidłowy lub niekompletny łańcuch certyfikatów;

PORADNIK

FILM

messaging.adaptors.http.flow.UnexpectedEOFAtTarget

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Unexpected EOF at target
  • Możliwa przyczyna:

Ten błąd występuje w jednym z tych scenariuszy:

  1. TargetServer nie jest prawidłowo skonfigurowany do obsługi połączeń TLS/SSL w Apigee Edge.
  2. Serwer backendu może nagle zamknąć połączenie, gdy Apigee Edge oczekuje na odpowiedź od serwera backendu.
  3. Nieprawidłowo skonfigurowane limity czasu funkcji keep-alive na serwerze backendu i Apigee.
PORADNIK

messaging.runtime.*

messaging.runtime.RouteFailed

  • Kod stanu HTTP:
500 Internal Server Error
  • Komunikat o błędzie:
Unable to route the message to a TargetEndpoint
  • Możliwa przyczyna:

Ten błąd występuje, gdy Apigee Edge nie może przekierować żądania do żadnego z adresów docelowych, ponieważ:

  • Brak warunku reguły ścieżki (<RouteRule>), który pasuje do żądania w serwerze proxy
  • ORAZ

  • W ProxyEndpoint nie ma zdefiniowanej reguły trasy domyślnej (np. <RouteRule> bez żadnego warunku).

Napraw

Aby rozwiązać ten problem:

  1. Sprawdź reguły trasy zdefiniowane w ProxyEndpoint i zmodyfikuj je, aby mieć pewność, że istnieje co najmniej 1 warunek reguły trasy, który pasuje do Twojego żądania.
  2. Jeśli masz wiele reguł trasy, warto zdefiniować domyślną regułę trasy bez warunków.
  3. Sprawdź, czy domyślna reguła trasy jest zawsze zdefiniowana jako ostatnia na liście tras warunkowych, ponieważ reguły są oceniane od góry w punkcie końcowym w punkcie końcowym.

Więcej informacji o definiowaniu warunków <RouteRule> w punkcie końcowym serwera proxy znajdziesz w opisie celów warunkowych.

messaging.runtime.SenseRaiseFault

  • Kod stanu HTTP:
403 Forbidden
  • Komunikat o błędzie:
Sense Fault
  • Możliwa przyczyna:
Ten błąd występuje, gdy żądanie interfejsu API jest wysyłane z określonego adresu IP klienta, który jest blokowany zgodnie z zasadami Apigee Sense.

Napraw

Aby rozwiązać ten problem:

  1. Sprawdź, czy zablokowałeś konkretny adres IP klienta, sprawdzając reguły skonfigurowane w Apigee Sense. Jeśli jest zablokowany, oznacza to, że działa zgodnie z oczekiwaniami.
  2. Jeśli konkretny adres IP klienta nie jest blokowany, ale nadal występuje ten błąd, skontaktuj się z zespołem pomocy Apigee Edge.

protocol.http.* - Caused due to bad request

protocol.http.BadFormData

  • Kod stanu HTTP:
500 Internal Server Error
  • Komunikat o błędzie:
Bad Form Data
  • Możliwa przyczyna:

Ten błąd występuje tylko wtedy, gdy są spełnione wszystkie te warunki:

  1. Żądanie HTTP wysłane przez klienta do Apigee Edge zawiera:
    • Content-Type: application/x-www-form-urlencoded, i
    • dane formularza zawierające znak procenta (%) lub znak procenta (%) poprzedzony nieprawidłowymi znakami szesnastkowymi, które są niedozwolone zgodnie z formularzami – sekcja 17.13.4.
  2. W ramach przepływu żądań zapora API w Apigee Edge odczytuje parametry konkretnego formularza zawierające znaki niedozwolone za pomocą zasad ExtractVariables lub AssignMessage.
PORADNIK

protocol.http.DuplicateHeader

  • Kod stanu HTTP:
400 Bad Request
  • Komunikat o błędzie:
Duplicate Header "{header_name}"
  • Możliwa przyczyna:
Ten błąd występuje, gdy określony nagłówek HTTP, który nie może mieć duplikatów w Apigee Edge, pojawia się więcej niż raz z tymi samymi lub różnymi wartościami w ramach żądania HTTP wysłanego przez aplikację kliencką do Apigee Edge.
  • Specyfikacja HTTP:
RFC 7230, sekcja 3.2.2: Field Order
PORADNIK

protocol.http.EmptyHeaderName

  • Kod stanu HTTP:
400 Bad Request
  • Komunikat o błędzie:
Header name cannot be empty
  • Możliwa przyczyna:
Ten błąd występuje, gdy nazwa nagłówka wysłana jako część żądania HTTP przez aplikację kliencką do Apigee Edge jest pusta.
  • Specyfikacja HTTP:
RFC 7230, sekcja 3.2: pola nagłówka

Napraw

Upewnij się, że żądanie HTTP wysłane przez aplikację kliencką do Apigee Edge zawsze zawiera prawidłową nazwę nagłówka zgodnie z RFC 7230, sekcja 3.2: Pola nagłówka.

protocol.http.HeaderNameWithNonAsciiChar

  • Kod stanu HTTP:
400 Bad Request
  • Komunikat o błędzie:
Header {header_name} contains non ascii character {character}
  • Możliwa przyczyna:
Ten błąd występuje, gdy nazwa nagłówka wysłana w ramach żądania HTTP przez aplikację kliencką do Apigee Edge zawiera znaki spoza zestawu ASCII.
  • Specyfikacja HTTP:

RFC 7230, sekcja 3.2: Pola nagłówka i RFC 7230, sekcja 3.2.6: Elementy wartości pola

Napraw

Sprawdź, czy żądanie HTTP klienta wysłane do Apigee Edge nie zawiera znaków spoza tabeli znaków ASCII w nazwach nagłówków zgodnie z opisem w specyfikacji RFC 7230, sekcja 3.2.6: Komponenty wartości pola.

protocol.http.HeaderWithInvalidChar

  • Kod stanu HTTP:
400 Bad Request
  • Komunikat o błędzie:
Header {header_name} contains invalid character {character}
  • Możliwa przyczyna:
Ten błąd występuje, jeśli nazwa nagłówka wysłana w ramach żądania HTTP przez aplikację kliencką do Apigee Edge zawiera nieprawidłowe znaki, takie jak znak równości (=), przecinek (,), średnik (;), tabulacja, CRLF i znak nowego wiersza.
  • Specyfikacja HTTP:

RFC 7230, sekcja 3.2: Pola nagłówka oraz RFC 7230, sekcja 3.2.6: Elementy wartości pola

Napraw

Sprawdź, czy żądanie HTTP wysłane przez aplikację kliencką do Apigee Edge nie zawiera żadnych nieprawidłowych znaków w nazwach nagłówków zgodnie z wymaganiami RFC 7230, sekcja 3.2.6: Komponenty wartości pola

protocol.http.InvalidPath

  • Kod stanu HTTP:
400 Bad Request
  • Komunikat o błędzie:
Invalid path {path}
  • Możliwa przyczyna:
Ten błąd występuje, gdy ścieżka w adresie URL żądania HTTP wysłanego przez aplikację kliencką do Apigee Edge zawiera znaki niedozwolone zgodnie ze specyfikacją RFC 3986, sekcja 3.3: Ścieżka.
  • Specyfikacja HTTP:

RFC 3986, sekcja 3: Składnia RFC 3986, sekcja 3.3: Ścieżka

Napraw

Sprawdź, czy ścieżka w adresie URL żądania HTTP wysłanego przez aplikację klienta do Apigee Edge nie zawiera żadnych znaków niedozwolonych zgodnie z  specyfikacją RFC 3986, sekcja 3.3: Ścieżka.

protocol.http.TooBigBody

  • Kod stanu HTTP:
413 Request Entity Too Large
  • Komunikat o błędzie:
Body buffer overflow
  • Możliwa przyczyna:
Ten błąd występuje, gdy rozmiar ładunku przesłanego przez aplikację klienta w ramach żądania HTTP do Apigee Edge przekracza dozwolony limit w Apigee Edge.
  • Limity:
Limity Apigee Edge
PORADNIK

protocol.http.TooBigHeaders

  • Kod stanu HTTP:
431 Request Header Fields Too Large
  • Komunikat o błędzie:
request headers size exceeding {limit}
  • Możliwa przyczyna:
Łączny rozmiar wszystkich nagłówków żądania wysłanych przez aplikację klienta w ramach żądania HTTP do Apigee Edge przekracza dozwolony limit w Apigee Edge.
  • Specyfikacja HTTP:
RFC 6585, sekcja 5: 431 Pola nagłówków żądań są za duże
  • Limity:
Limity Apigee Edge
PORADNIK

protocol.http.TooBigLine

  • Kod stanu HTTP:
414 Request-URI Too Long
  • Komunikat o błędzie:
request line size exceeding {limit}
  • Możliwa przyczyna:
Ten błąd występuje, gdy rozmiar wiersza żądania wysłanego przez aplikację klienta w ramach żądania HTTP do Apigee Edge przekracza dozwolony limit w Apigee Edge.
  • Limity:
Limity Apigee dotyczące krawędzi
PORADNIK

protocol.http.UnsupportedEncoding

  • Kod stanu HTTP:
415 Unsupported Media
  • Komunikat o błędzie:
Unsupported Encoding "{encoding}"
  • Możliwa przyczyna:
Ten błąd występuje, jeśli nagłówek Content-Encoding wysłany przez klienta w ramach odpowiedzi HTTP zawiera format kodowania lub ładunku, który nie jest obsługiwany przez Apigee Edge.
  • Specyfikacja HTTP:
RFC 7231, sekcja 6.5.13: 415 Nieobsługiwany typ multimediów
PORADNIK

protocol.http.* - Caused by target

protocol.http.BadPath

  • Kod stanu HTTP:
500 Internal Server Error
  • Komunikat o błędzie:
Invalid request path
  • Możliwa przyczyna:
Ten błąd występuje, jeśli URL żądania serwera backendu, reprezentowany przez zmienną przepływu target.url, zawiera ścieżkę rozpoczynającą się od znaku zapytania (?) zamiast ukośnika (/), co jest nieprawidłowe.
  • Specyfikacja HTTP:

RFC 3986, sekcja 3: Komponenty składni RFC 3986, sekcja 3.3: Ścieżka

PORADNIK

protocol.http.DuplicateHeader

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Duplicate Header "{header_name}"
  • Możliwa przyczyna:
Ten błąd występuje, jeśli konkretny nagłówek HTTP, który nie może mieć duplikatów w Apigee Edge, występuje więcej niż raz z tymi samymi lub różnymi wartościami w odpowiedzi HTTP wysłanej przez serwer backendu do Apigee Edge.
  • Specyfikacja HTTP:
RFC 7230, sekcja 3.2.2: Kolejność pól
PORADNIK

protocol.http.EmptyHeaderName

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Header name cannot be empty
  • Możliwa przyczyna:
Ten błąd występuje, jeśli nazwa nagłówka wysłana przez serwer backendu w ramach odpowiedzi HTTP do Apigee Edge jest pusta.
  • Specyfikacja HTTP:
RFC 7230, sekcja 3.2: Pola nagłówka

Napraw

Sprawdź, czy odpowiedź HTTP wysłana przez serwer backendu do Apigee Edge zawsze zawiera prawidłową nazwę nagłówka zgodnie z opisem w RFC 7230, sekcja 3.2: pola nagłówka.

protocol.http.EmptyPath

  • Kod stanu HTTP:
500 Internal Server Error
  • Komunikat o błędzie:
Request path cannot be empty
  • Możliwa przyczyna:
Ten błąd występuje, jeśli adres URL żądania HTTP serwera backendu, reprezentowany przez zmienną przepływu target.url, zawiera pustą ścieżkę.
  • Specyfikacja HTTP:

RFC 3986, sekcja 3: Składnia oraz RFC 3986, sekcja 3.3: Ścieżka

PORADNIK

protocol.http.HeaderNameWithNonAsciiChar

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Header {header_name} contains non ascii character {character}
  • Możliwa przyczyna:
Ten błąd występuje, jeśli nazwa nagłówka wysłana przez serwer backendu w odpowiedzi HTTP do Apigee Edge zawiera znaki spoza zestawu ASCII.
  • Specyfikacja HTTP:

RFC 7230, sekcja 3.2: pola nagłówka i RFC 7230, sekcja 3.2.6: komponenty wartości pola

Napraw

Upewnij się, że odpowiedź HTTP serwera backendu wysłana do Apigee Edge nie zawiera w nazwach nagłówków znaków spoza zestawu ASCII zgodnie z  RFC 7230, sekcja 3.2.6: Field Value Components (Elementy wartości pola).

protocol.http.HeaderWithInvalidChar

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Header {header_name} contains invalid character {character}
  • Możliwa przyczyna:
Ten błąd występuje, jeśli nazwa nagłówka wysłana przez serwer zaplecza w ramach odpowiedzi HTTP zawiera nieprawidłowe znaki, takie jak znak równości (=), przecinek (,), średnik (;), tabulator, CRLF lub znak nowego wiersza.
  • Specyfikacja HTTP:

RFC 7230, sekcja 3.2: Pola nagłówka oraz RFC 7230, sekcja 3.2.6: Elementy wartości pola

Napraw

Sprawdź, czy odpowiedź HTTP serwera backendu wysłana do Apigee Edge nie zawiera żadnych nieprawidłowych znaków w nazwach nagłówków zgodnie z opisem w specyfikacji RFC 7230, sekcja 3.2.6: Komponenty wartości pola

protocol.http.ProxyTunnelCreationFailed

  • Kod stanu HTTP:
503 Service Unavailable
  • Komunikat o błędzie:
Proxy refused to create tunnel with response status {status code}
  • Możliwa przyczyna:

Ten błąd występuje podczas tworzenia tunelu między Apigee Edge a serwerem zaplecza przez serwer proxy z powodu problemów z zaporą ogniową, listą kontroli dostępu (ACL), DNS-em, dostępnością serwera zaplecza itp.

Uwaga: kod stanu w komunikacie o błędzie (faultstring) wskazuje główną przyczynę problemu.

PORADNIK

protocol.http.Response306Reserved

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Response Status code 306 is reserved, so can't be used.
  • Możliwa przyczyna:

Ten błąd występuje, gdy serwer backendu odpowiada kodem stanu306 do Apigee Edge.

Kod stanu 306 został zdefiniowany w poprzedniej wersji specyfikacji HTTP. Zgodnie z bieżącą specyfikacją HTTP ten kod jest zarezerwowany i nie należy go używać.

  • Specyfikacja HTTP:
RFC 7231, sekcja 6.3.5: 306 Reserved

Napraw

Ponieważ kod stanu 306 jest zarezerwowany, upewnij się, że serwer backendu nie używa tego kodu podczas wysyłania odpowiedzi do Apigee Edge.

protocol.http.Response405WithoutAllowHeader

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Received 405 Response without Allow Header
  • Możliwa przyczyna:
Serwer backendu odpowiada kodem stanu405 Method Not Allowed bez nagłówka „Allow”.
  • Specyfikacja HTTP:

RFC 7231, sekcja 6.5.5: 405 Method Not Allowed i RFC 7231, sekcja 7.4.1: Allow

PORADNIK

protocol.http.ResponseWithBody

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Received {status_code} Response with message body
  • Możliwa przyczyna:

Ten błąd występuje, jeśli odpowiedź HTTP z serwera backendu do Apigee Edge to 204 No Content lub 205 Reset Content, ale zawiera treść odpowiedzi lub co najmniej 1 z tych nagłówków:

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

RFC 7231, sekcja 6.3.5: 204 Brak treści i RFC 7231, sekcja 6.3.6: 205 Resetowanie treści

PORADNIK

protocol.http.TooBigBody

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
Body buffer overflow
  • Możliwa przyczyna:
Ten błąd występuje, gdy rozmiar ładunku przesłanego przez aplikację klienta w ramach żądania HTTP do Apigee Edge przekracza dozwolony limit w Apigee Edge.
  • Limity:
Limity Apigee dotyczące krawędzi
PORADNIK

protocol.http.TooBigHeaders

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
response headers size exceeding {limit}
  • Możliwa przyczyna:
Ten błąd występuje, gdy łączny rozmiar wszystkich nagłówków odpowiedzi wysłanych przez serwer zaplecza w odpowiedzi HTTP do Apigee Edge przekracza dozwolony limit w Apigee Edge.
  • Limity:
Limity Apigee Edge
PORADNIK

protocol.http.TooBigLine

  • Kod stanu HTTP:
502 Bad Gateway
  • Komunikat o błędzie:
response line size exceeding {limit}
  • Możliwa przyczyna:
Ten błąd występuje, jeśli rozmiar wiersza odpowiedzi wysłanego przez serwer backendu w ramach odpowiedzi HTTP do Apigee Edge przekracza dozwolony limit w Apigee Edge.
  • Limity:
Limity Apigee Edge
PORADNIK

protocol.http.UnsupportedEncoding

  • Kod stanu HTTP:
415 Unsupported Media
  • Komunikat o błędzie:
Unsupported Encoding "{encoding}"
  • Możliwa przyczyna:
Ten błąd występuje, jeśli nagłówek Content-Encoding wysłany przez serwer zaplecza w ramach odpowiedzi HTTP zawiera format kodowania/danych, którego Apigee Edge nie obsługuje.
  • Specyfikacja HTTP:
RFC 7231, sekcja 6.5.13: 415 Nieobsługiwany typ multimediów
PORADNIK

security.util.*

security.util.KeyAliasNotFound

  • Kod stanu HTTP:
500 Internal Server Error
  • Komunikat o błędzie:
KeyAlias {KeyAlias_name} is not found in Keystore {Keystore_Name}
  • Możliwa przyczyna:

Ten błąd występuje, jeśli konkretnego aliasu klucza, do którego odwołuje się parametr TargetEndpoint lub TargetServer, nie można znaleźć w danym magazynie kluczy.

Napraw

Upewnij się, że klucz aliasu podany w ustawieniu TargetEndpoint lub TargetServer istnieje i jest częścią konkretnego magazynu kluczy.

security.util.TrustStoreWithNoCertificates

  • Kod stanu HTTP:
500 Internal Server Error
  • Komunikat o błędzie:
TrustStore {truststore_name} has no certificates
  • Możliwa przyczyna:

Ten błąd występuje, jeśli określony zaufany magazyn kluczy, do którego odwołuje się parametr TargetEndpoint lub TargetServer, nie zawiera żadnych certyfikatów.

Napraw

Jeśli chcesz zweryfikować certyfikat serwera backendu i używać repozytorium z zaufanymi certyfikatami w punkcie końcowym docelowym lub serwerze docelowym, upewnij się, że repozytorium z zaufanymi certyfikatami zawiera ważne certyfikaty serwera backendu.