Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X. Informacje
W Apigee routery są skonfigurowane tak, aby domyślnie logowały tylko komunikaty o błędach w plikach logów błędów. Jednak aby ustalić, dlaczego wystąpił określony błąd, może być jednak konieczne zebranie większej ilości informacji. Jednym ze sposobów jest skonfigurowanie routera w taki sposób, aby działał w trybie debugowania. Dzięki temu będziesz mieć dostęp do logów debugowania, które pomogą Ci zebrać więcej informacji o błędzie i szybciej go rozwiązać.
Ten dokument wyjaśnia, jak włączyć logi debugowania w routerze Apigee Edge dla żądań wysyłanych do określonego hosta wirtualnego. Logowanie debugowania można włączyć, aby rejestrować więcej informacji w przypadku wystąpienia problemów, takich jak nieprawidłowe żądanie ( 400 Bad Request – SSL Certificate Error) na stronie Northbound (między aplikacją klienta a routerem).
Zanim zaczniesz
- Jeśli nie znasz dzienników błędów NGINX i poziomów rejestrowania, zapoznaj się z dokumentacją logów błędów NGINX.
- Zbierz organizacje, środowiska i nazwy hostów wirtualnych żądań do interfejsu API, dla których chcesz zbierać dane debugowania.
Włączanie logów debugowania NGINX w routerach
W tej sekcji dowiesz się, jak włączyć logi debugowania w routerach brzegowych.
Określenie odpowiedniego pliku konfiguracji hosta wirtualnego
Oto jak znaleźć w routerze odpowiedni plik konfiguracji hosta wirtualnego:
- Jeśli znasz nazwę organizacji, nazwę środowiska i hosta wirtualnego dla konkretnego żądania interfejsu API, które chcesz debugować, określ plik konfiguracji hosta wirtualnego w ten sposób:
- Przejdź do katalogu
/opt/nginx/conf.d/
. - Wyszukaj plik ORG_NAME_ENV_NAME_VIRTUALHOST
.conf
w kataloguconf.d
za pomocą tego polecenia:ls -ltrh | grep "ORG_NAME_ENV_NAME_VIRTUALHOST_NAME"
- Przejdź do katalogu
-
Jeśli nie znasz nazwy organizacji, możesz zidentyfikować plik konfiguracji hosta wirtualnego przy użyciu nazwy aliasu hosta, która jest używana w żądaniu do interfejsu API w następujący sposób:
Przejdź do katalogu
/opt/nginx/conf.d/
i wyszukajhostalias
, dla którego wysłano żądanie za pomocą tego polecenia:ls -ltrh | grep -r 'HOST_ALIAS_NAME'
Przykładowe wyniki:
Załóżmy, że nazwa aliasu hosta to
opdk.cert-test.com
. Po uruchomieniu polecenials -ltrh
zobaczysz dane wyjściowe tak jak poniżej:
Włączanie logowania debugowania dla określonego hosta wirtualnego w routerze
Poniżej znajdziesz instrukcje włączania logów debugowania w routerach Apigee dla określonego hosta wirtualnego.
- Otwórz w edytorze ten plik na routerze:
/opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
. Przykład:vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
- Zmień ten wiersz:
error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;
- Zapisz zmiany.
- Uruchom polecenie ponownego załadowania NGINX. Przykład:
sudo /opt/nginx/scripts/apigee-nginx reload
- Ten plik będzie teraz przechwytywać logi debugowania:
/opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
- Jeśli chcesz przechwytywać logi debugowania na więcej niż 1 routerze, powtórz te czynności na każdym z nich.
Dane debugowania są sprawdzane w pliku dziennika błędów NGINX
-
Gdy klient wyśle żądania do interfejsu API na alias hosta i port powiązany z konfiguracją hosta wirtualnego, logi debugowania zostaną przechwycone w tym pliku:
/opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
-
Sprawdź, czy widzisz dane debugowania dotyczące żądań interfejsu API, tak jak w tym przykładzie:
Przykładowe informacje na potrzeby debugowania:
2021/01/27 02:48:40 [warn] 27624#27624: *3777 a client request body is buffered to a temporary file /opt/apigee/var/log/edge-router/nginx/client_temp/0000000001, client: XX.XX.XX.XX, server: XX.XX.XX.XX, request: "POST /post-no-target HTTP/1.1", host: "XX.XX.XX.XX:443"
Powyższe informacje zostaną przechwycone, gdy klient wyśle żądanie
POST
z dużym ładunkiem. Ten dziennik jest wyświetlany tylko wtedy, gdy jest włączone logowanie debugowania. - Jeśli nie widzisz dodatkowych informacji na temat debugowania, sprawdź, czy zostały wykonane wszystkie czynności opisane w sekcji Włączanie logowania debugowania dla określonego hosta wirtualnego w routerze. Jeśli pominięto jakiś krok, powtórz wszystkie kroki ponownie.
- Jeśli nadal nie możesz uzyskać danych debugowania, skontaktuj się z zespołem pomocy Apigee Edge.
Wyłączanie dzienników debugowania określonego hosta wirtualnego w routerze
W tej sekcji wyjaśniono, jak wyłączyć dzienniki debugowania w routerze dla określonego hosta wirtualnego.
- Otwórz w edytorze ten plik na routerze:
/opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
Na przykład:vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
-
Zmień ten wiersz:
error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;
error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
- Zapisz zmiany.
- Uruchom polecenie ponownego załadowania NGINX. Przykład:
/opt/nginx/scripts/apigee-nginx reload
- Ten plik będzie teraz przechwytywać tylko logi błędów:
/opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
- Jeśli chcesz zatrzymać logi debugowania na więcej niż 1 routerze, powtórz te czynności na każdym z nich.
W pliku dziennika błędów NGINX rejestrowane są tylko informacje o błędzie
- Wyślij żądania do interfejsu API na alias hosta i port powiązany z konkretną konfiguracją hosta wirtualnego lub poczekaj, aż klienci wyślą żądania.
- Sprawdź ten plik:
/opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
- Sprawdź, czy wyświetlane są tylko informacje o błędzie, a dane debugowania dla żądań nie są już logowane.
- Jeśli dodatkowe dane debugowania są nadal logowane, sprawdź, czy zostały wykonane wszystkie czynności opisane w sekcji Wyłączanie logów debugowania określonego hosta wirtualnego w routerze. Jeśli pominięto jakiś krok, powtórz wszystkie kroki ponownie.
- Jeśli nadal nie możesz uzyskać danych debugowania, skontaktuj się z zespołem pomocy Apigee Edge.