W sekcjach poniżej opisaliśmy znane problemy związane z Apigee. W większości przypadków wymienione problemy zostaną rozwiązane w przyszłej wersji.
Inne znane problemy z Edge
W sekcjach poniżej opisaliśmy różne znane problemy z Edge.
Obszar/podsumowanie
Znane problemy
Wygaśnięcie pamięci podręcznej powoduje nieprawidłową wartość cachehit
Gdy zmienna przepływu cachehit jest używana po polityce LookupCache, ze względu na sposób wysyłania punktów debugowania w przypadku zachowania asynchronicznego, polityka LookupPolicy wypełnia obiekt DebugInfo przed wykonaniem wywołania zwrotnego, co powoduje błąd.
Obejście: powtórz proces (nawiązywanie drugiego połączenia) bezpośrednio po pierwszym połączeniu.
Ustawienie zasady PurgeChildEntries Nieważna pamięć podręczna na Prawda nie działa prawidłowo
Ustawienie wartości PurgeChildEntries w zasadzie InvalidateCache powinno spowodować usunięcie tylko wartości elementu KeyFragment, ale powoduje wyczyszczenie całej pamięci podręcznej.
Rozwiązanie: użyj polityki KeyValueMapOperations, aby iterować wersjonowanie pamięci podręcznej i ominąć konieczność unieważniania pamięci podręcznej.
Równoczesne żądania wdrożenia w przypadku SharedFlow lub interfejsu API proxy mogą spowodować niespójny stan na serwerze zarządzającym, na którym widoczne są jako wdrożone różne wersje.
Może się tak zdarzyć, gdy równolegle działają różne wersje potoku wdrożeniowego CI/CD. Aby uniknąć tego problemu, nie wdrażaj zasobów proxy API ani SharedFlow przed zakończeniem bieżącego wdrożenia.
Rozwiązanie: unikaj jednoczesnego wdrażania proxy interfejsu API i SharedFlow.
Interfejs Edge API Analytics może czasami zawierać zduplikowane dane wywołań interfejsu API. W takim przypadku liczby wywołań interfejsu API wyświetlane w Edge API Analytics są wyższe niż porównywalne wartości wyświetlane w zewnętrznych narzędziach analitycznych.
W tych sekcjach opisano znane problemy z interfejsem Edge.
Powierzchnia
Znane problemy
Po zmapowaniu organizacji na strefę tożsamości nie można uzyskać dostępu do strony administrowania strefą logowania Edge SSO z paska nawigacyjnego
Gdy połączysz organizację ze strefą tożsamości, utracisz dostęp do strony Administrowanie strefą logowania na serwerach brzegowych za pomocą lewego paska nawigacyjnego – wybierz Administrator > Logowanie jednokrotne. Aby obejść ten problem, otwórz stronę bezpośrednio, korzystając z tego adresu URL: https://apigee.com/sso
Znane problemy z zintegrowanym portalem
W poniższych sekcjach opisaliśmy znane problemy związane z zintegrowanym portalem.
Na przykład te funkcje specyfikacji OpenAPI 3.0 nie są jeszcze obsługiwane:
allOfwłaściwości do łączenia i rozszerzania schematów
odwołania zdalne.
Jeśli w specyfikacji OpenAPI jest nawiązanie do funkcji, której nie obsługujemy, narzędzia mogą ją zignorować, ale nadal renderować dokumentację referencyjną interfejsu API. W innych przypadkach nieobsługiwana funkcja spowoduje błędy, które uniemożliwią renderowanie dokumentacji referencyjnej interfejsu API. W obu przypadkach musisz zmodyfikować specyfikację OpenAPI, aby uniknąć używania funkcji, która nie jest obsługiwana, dopóki nie zostanie obsługiwana w przyszłej wersji.
Uwaga: podczas renderowania dokumentacji referencyjnej interfejsu API edytor specyfikacji jest mniej restrykcyjny niż SmartDocs, więc wyniki uzyskane za pomocą tych narzędzi mogą się różnić.
Gdy używasz opcji Wypróbuj ten interfejs API na portalu, nagłówek Accept jest ustawiony na application/json niezależnie od wartości consumes w specyfikacji OpenAPI.
Wylogowanie jednokrotne (SLO) z dostawcą tożsamości SAML nie jest obsługiwane w przypadku domen niestandardowych. Aby włączyć domenę niestandardową z dostawcą tożsamości SAML, podczas konfigurowania ustawień SAML pozostaw puste pole URL wylogowywania.
Administrator portalu
Jednoczesne aktualizowanie portalu (np. strony, motywu, szablonu CSS lub skryptu) przez wielu użytkowników nie jest obecnie obsługiwane.
Jeśli usuniesz stronę dokumentacji referencyjnej API z portalu, nie będzie można jej ponownie utworzyć. Musisz usunąć i ponownie dodać produkt API, a następnie wygenerować dokumentację referencyjną API.
Wyszukiwarka zostanie zintegrowana z integrowanym portalem w jednej z kolejnych wersji.
Znane problemy z Edge for Private Cloud
W sekcjach poniżej opisujemy znane problemy z Edge dla chmury prywatnej.
Obszar
Znane problemy
Edge for Private Cloud 4.53.01
443272053. Błędy Datastore w komponentach brzegowych
W Edge for Private Cloud w wersji 4.53.00 lub nowszej określony typ interakcji między Cassandrą a komponentami aplikacji (serwerem zarządzania, procesorem wiadomości lub routerem) może powodować błędy magazynu danych. Gdy wystąpi taki błąd, w dziennikach systemowych konkretnego komponentu aplikacji zobaczysz logi o tym wzorze:
com.datastax.driver.core.exceptions.ProtocolError: An unexpected protocol error occurred on host /WW.XX.YY.ZZ:9042.
Takie błędy występują, ponieważ ostrzeżenia są generowane przez bazę danych Cassandra, ale komponent aplikacji nie może ich obsłużyć. Aby temu zapobiec, unikaj ostrzeżeń lub je pomijaj w węzłach Cassandra. Ostrzeżenia są najczęściej generowane z powodu nadmiernej liczby znaczników usunięcia. Aby rozwiązać problemy związane z nadmierną liczbą znaczników usunięcia, możesz skorzystać z jednej lub kilku z tych opcji:
Zmniejsz wartość gc_grace_seconds: w przypadku tabeli wyświetlanej w komunikacie dziennika powiązanym z błędem zmniejsz wartość gc_grace_seconds, uruchamiając to polecenie w cqlsh:
# Below command sets gc_grace_seconds of kms.oauth_20_access_tokens to 1 day from default 10 days ALTER TABLE kms.oauth_20_access_tokens WITH gc_grace_seconds = '86400';
Zwiększ progi znaczników usunięcia w Cassandrze, aby generować ostrzeżenia. W tym celu wykonaj te czynności:
Na węźle Cassandra utwórz lub zmodyfikuj plik $APIGEE_ROOT/customer/application/cassandra.properties.
Zwiększ próg ostrzeżenia o nagrobku do 100 tys. z domyślnej wartości 10 tys. lub ustaw większe wartości, dodając ten wiersz: conf_cassandra_tombstone_warn_threshold=100000
Upewnij się, że powyższy plik jest własnością użytkownika apigee i może być przez niego odczytywany: chown apigee:apigee $APIGEE_ROOT/customer/application/cassandra.properties
Uruchom ponownie aplikację Cassandra w węźle: apigee-service apigee-cassandra restart
Powtórz powyższe kroki na każdym węźle Cassandra, jeden po drugim.
42733857. Opóźnienie w aktualizowaniu zaszyfrowanych map wartości kluczy (KVM)
Podczas pracy z zaszyfrowanymi mapami par klucz-wartość zawierającymi dużą liczbę wpisów użytkownicy mogą doświadczać opóźnień przy dodawaniu lub aktualizowaniu wpisów, niezależnie od tego, czy korzystają z interfejsów API do zarządzania, czy z elementu PUT w ramach zasad KeyValueMapOperations . Wpływ na wydajność jest zwykle proporcjonalny do łącznej liczby wpisów przechowywanych w zaszyfrowanym KVM.
Aby uniknąć tego problemu, zalecamy, aby użytkownicy nie tworzyli zaszyfrowanych map kluczy KVM z nadmierną liczbą wpisów. Można podzielić duży KVM na kilka mniejszych. Dodatkowo, jeśli przypadek użycia na to pozwala, skuteczną strategią ograniczania ryzyka może być też przejście na niezaszyfrowany KVM. Zespół Apigee wie o tym problemie i planuje wydać poprawkę w przyszłej aktualizacji.
Objaśnienia w języku Java
Wywołania Java klienta, które próbują wczytać dostawcę kryptografii Bouncy Castle przy użyciu nazwy „BC”, mogą się nie powieść, ponieważ domyślny dostawca został zmieniony na Bouncy Castle FIPS w celu obsługi FIPS. Nowa nazwa dostawcy to „BCFIPS”.
Edge for Private Cloud 4.53.00
443272053. Błędy Datastore w komponentach brzegowych
W Edge for Private Cloud w wersji 4.53.00 lub nowszej określony typ interakcji między Cassandrą a komponentami aplikacji (serwerem zarządzania, procesorem wiadomości lub routerem) może powodować błędy magazynu danych. Gdy wystąpi taki błąd, w dziennikach systemowych konkretnego komponentu aplikacji zobaczysz logi o tym wzorze:
com.datastax.driver.core.exceptions.ProtocolError: An unexpected protocol error occurred on host /WW.XX.YY.ZZ:9042.
Takie błędy występują, ponieważ ostrzeżenia są generowane przez bazę danych Cassandra, ale komponent aplikacji nie może ich obsłużyć.Aby temu zapobiec, unikaj ostrzeżeń w węzłach Cassandra lub je pomijaj. Ostrzeżenia są najczęściej generowane z powodu nadmiernej liczby znaczników usunięcia. Aby rozwiązać problemy związane z nadmierną liczbą znaczników usunięcia, możesz skorzystać z jednej lub kilku z tych opcji:
Zmniejsz wartość gc_grace_seconds: w przypadku tabeli wyświetlanej w komunikacie dziennika powiązanym z błędem zmniejsz wartość gc_grace_seconds, uruchamiając to polecenie w cqlsh:
# Below command sets gc_grace_seconds of kms.oauth_20_access_tokens to 1 day from default 10 days ALTER TABLE kms.oauth_20_access_tokens WITH gc_grace_seconds = '86400';
Zwiększ progi znaczników usunięcia w Cassandrze, aby generować ostrzeżenia. W tym celu wykonaj te czynności:
Na węźle Cassandra utwórz lub zmodyfikuj plik $APIGEE_ROOT/customer/application/cassandra.properties.
Zwiększ próg ostrzeżenia o nagrobku do 100 tys. z domyślnej wartości 10 tys. lub ustaw większe wartości, dodając ten wiersz: conf_cassandra_tombstone_warn_threshold=100000
Upewnij się, że powyższy plik jest własnością użytkownika apigee i może być przez niego odczytywany: chown apigee:apigee $APIGEE_ROOT/customer/application/cassandra.properties
Uruchom ponownie aplikację Cassandra w węźle: apigee-service apigee-cassandra restart
Powtórz powyższe kroki na każdym węźle Cassandra, jeden po drugim.
42733857. Opóźnienie w aktualizowaniu zaszyfrowanych map wartości kluczy (KVM)
Podczas pracy z zaszyfrowanymi mapami par klucz-wartość zawierającymi dużą liczbę wpisów użytkownicy mogą doświadczać opóźnień przy dodawaniu lub aktualizowaniu wpisów, niezależnie od tego, czy korzystają z interfejsów API do zarządzania, czy z elementu PUT w ramach zasad KeyValueMapOperations . Wpływ na wydajność jest zwykle proporcjonalny do łącznej liczby wpisów przechowywanych w zaszyfrowanym KVM.
Aby uniknąć tego problemu, zalecamy, aby użytkownicy nie tworzyli zaszyfrowanych map kluczy KVM z nadmierną liczbą wpisów. Można podzielić duży KVM na kilka mniejszych. Dodatkowo, jeśli przypadek użycia na to pozwala, skuteczną strategią ograniczania ryzyka może być też przejście na niezaszyfrowany KVM. Zespół Apigee wie o tym problemie i planuje wydać poprawkę w przyszłej aktualizacji.
412696630. Nie udało się załadować magazynów kluczy podczas uruchamiania
Komponenty edge-message-processor lub edge-router mogą okresowo nie wczytywać co najmniej 1 magazynu kluczy podczas uruchamiania, co powoduje błędy w ruchu, gdy magazyn kluczy jest używany przez serwer proxy interfejsu API lub w hoście wirtualnym.
Aby temu zapobiec, możesz wykonać te czynności:
W węźle procesora wiadomości dodaj lub edytuj plik $APIGEE_ROOT/customer/application/message-processor.properties
Zapisz plik i upewnij się, że jest czytelny i należy do użytkownika apigee chown apigee:apigee $APIGEE_ROOT/customer/application/message-processor.properties.
Ponownie uruchom usługę przetwarzania wiadomości.apigee-service edge-message-processor restart
Powtórz powyższe czynności na każdym węźle procesora wiadomości.
W węźle routera dodaj lub zmień plik $APIGEE_ROOT/customer/application/router.properties.
Zapisz plik i upewnij się, że jest czytelny i należy do użytkownika apigee chown apigee:apigee $APIGEE_ROOT/customer/application/router.properties.
Ponownie uruchom usługę routera apigee-service edge-router restart.
Powtórz powyższe czynności na każdym węźle routera po kolei.
Objaśnienia w języku Java
Wywołania Java klienta, które próbują wczytać dostawcę kryptografii Bouncy Castle przy użyciu nazwy „BC”, mogą się nie powieść, ponieważ domyślny dostawca został zmieniony na Bouncy Castle FIPS w celu obsługi FIPS. Nowa nazwa dostawcy to „BCFIPS”.
Aktualizacja Edge for Private Cloud 4.52.01 Mint
Ten problem dotyczy tylko użytkowników, którzy korzystają z MINT lub mają włączoną tę usługę w Edge dla instalacji chmury prywatnej.
Komponent, którego dotyczy problem: edge-message-processor
Problem: jeśli masz włączoną monetyzację i instalujesz wersję 4.52.01 jako nową instalację lub uaktualniasz ją z poprzednich wersji chmury prywatnej, napotkasz problem z procesorami wiadomości. Liczba otwartych wątków będzie stopniowo wzrastać, co doprowadzi do wyczerpania zasobów. W pliku system.log procesora komunikatów brzegowych widać ten wyjątek:
W wielu implementacjach protokołu HTTP/2 (CVE-2023-44487), w tym w Apigee Edge dla chmury prywatnej, wykryto niedawno lukę w zabezpieczeniach typu odmowa usługi (DoS). Ta luka w zabezpieczeniach może prowadzić do ataku typu DoS na funkcje zarządzania interfejsami API Apigee.
Więcej informacji znajdziesz w biuletynie o zabezpieczeniach Apigee GCP-2023-032.
Komponenty Edge for Private Cloud router i serwer zarządzania są dostępne w internecie i mogą być podatne na ataki. Chociaż protokół HTTP/2 jest włączony na porcie zarządzania innych komponentów Edge dla chmury prywatnej, żaden z tych komponentów nie jest dostępny z internetu. W przypadku komponentów innych niż Edge, takich jak Cassandra, Zookeeper i inne, protokół HTTP/2 nie jest włączony. Aby rozwiązać problem z luką w zabezpieczeniach Edge dla chmury prywatnej, wykonaj te czynności:
Uaktualnianie bazy danych Postgresql podczas aktualizacji do wersji 4.52
Występują problemy z aktualizacją Apigee-postgresql z Edge for Private Cloud w wersji 4.50 lub 4.51 do wersji 4.52. Problemy występują głównie wtedy, gdy liczba tabel przekracza 500.
Aby sprawdzić łączną liczbę tabel w PostgreSQL, uruchom to zapytanie SQL:
149245401: ustawienia puli połączeń LDAP dla JNDI skonfigurowane za pomocą zasobu LDAP nie są odzwierciedlane, a ustawienia domyślne JNDI powodują, że za każdym razem używane są połączenia jednorazowe.
W rezultacie połączenia są otwierane i zamykane za każdym razem do jednorazowego użytku, co powoduje dużą liczbę połączeń z serwerem LDAP w ciągu godziny.
Obejście:
Aby zmienić właściwości puli połączeń LDAP, wykonaj te czynności, aby wprowadzić globalną zmianę we wszystkich zasadach LDAP.
Utwórz plik właściwości konfiguracji, jeśli jeszcze nie istnieje:
Upewnij się, że plik /opt/apigee/customer/application/message-processor.properties należy do użytkownika apigee:apigee.
Uruchom ponownie każdy procesor wiadomości.
Aby sprawdzić, czy właściwości JNDI puli połączeń działają prawidłowo, możesz wykonać tcpdump, aby obserwować zachowanie puli połączeń LDAP w czasie.
Długi czas przetwarzania żądań
139051927: Wysokie opóźnienia przetwarzania serwera proxy w procesorze wiadomości
mają wpływ na
wszystkie serwery proxy interfejsu API. Objawy to opóźnienia w czasie przetwarzania o 200–300 ms w porównaniu z normalnym czasem odpowiedzi interfejsu API. Mogą one występować losowo nawet przy niskim TPS. Może to wystąpić, gdy liczba serwerów docelowych, z którymi łączy się procesor wiadomości, przekracza 50.
Przyczyna:
Procesory wiadomości przechowują pamięć podręczną, która mapuje adres URL serwera docelowego na obiekt HTTPClient dla połączeń wychodzących z serwerami docelowymi. Domyślnie to ustawienie ma wartość 50, która w przypadku większości wdrożeń może być zbyt niska. Jeśli w konfiguracji wdrożenia występuje wiele kombinacji organizacji i środowiska, a łączna liczba serwerów docelowych przekracza 50, adresy URL serwerów docelowych są usuwane z pamięci podręcznej, co powoduje opóźnienia.
Weryfikacja:
Aby sprawdzić, czy problem z opóźnieniem jest spowodowany usunięciem adresu URL serwera docelowego, wyszukaj w plikach system.logs procesora wiadomości słowa kluczowe „onEvict” lub „Eviction”. Ich obecność w logach wskazuje, że adresy URL serwera docelowego są usuwane z pamięci podręcznej HTTPClient, ponieważ jej rozmiar jest zbyt mały.
Obejście:
W przypadku Edge for Private Cloud w wersjach 19.01 i 19.06 możesz edytować i konfigurować pamięć podręczną HTTPClient:/opt/apigee/customer/application/message-processor.properties
Następnie ponownie uruchom procesor wiadomości. Wprowadź te same zmiany we wszystkich procesorach wiadomości.
Wartość 500 jest tylko przykładem. Optymalna wartość w Twojej konfiguracji powinna być większa niż liczba serwerów docelowych, z którymi połączy się procesor wiadomości. Ustawienie wyższej wartości tej właściwości nie ma żadnych skutków ubocznych, a jedynym efektem będzie skrócenie czasu przetwarzania żądań proxy przez procesor wiadomości.
Uwaga: w przypadku Edge for Private Cloud w wersji 50.00 domyślne ustawienie to 500.
Wiele wpisów w przypadku map par klucz-wartość
157933959: jednoczesne wstawianie i aktualizowanie tej samej mapy klucz-wartość (KVM) w zakresie organizacji lub środowiska powoduje niespójność danych i utratę aktualizacji.
Uwaga: to ograniczenie dotyczy tylko Edge w chmurze prywatnej. Edge for Public Cloud i Hybrid nie mają tego ograniczenia.
Aby obejść ten problem w Edge for Private Cloud, utwórz KVM w apiproxyzakresie.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-09-15 UTC."],[],[],null,[]]