Przeglądasz dokumentację Apigee Edge.
  Przejdź do
     Dokumentacja Apigee X. informacje.
Krótki opis problemu
Na panelach statystyk (Wydajność proxy, Docelowa skuteczność itp.) nie wyświetlają się żadne w interfejsie Edge. We wszystkich panelach będzie widoczny następujący komunikat:
No traffic in the selected date range
Komunikaty o błędach
Ten problem nie powoduje występowania błędów możliwych do zaobserwowania.
Możliwe przyczyny
W tabeli poniżej znajdziesz możliwe przyczyny tego problemu:
| Przyczyna | Dla: | 
|---|---|
| Brak ruchu przez interfejsy API w środowisku organizacji | Edge dla użytkowników Private Cloud | 
| Dane są dostępne w bazie danych Postgres, ale nie są wyświetlane w Interfejs | Edge dla użytkowników Private Cloud | 
| Dane Analytics nie są przekazywane do bazy danych Postgres | Edge dla użytkowników Private Cloud | 
| Nieprawidłowe wdrożenie Analytics | Edge dla użytkowników Private Cloud | 
| Identyfikatory UUID Staale Analytics Server | Edge dla użytkowników Private Cloud | 
Brak ruchu przez interfejsy API w środowisku organizacji
Diagnostyka
- Sprawdź, czy w danym środowisku organizacji występuje ruch związany z serwerami proxy interfejsów API
    konkretnego okresu, przez który próbujesz wyświetlić dane analityczne za pomocą jednej z tych metod:
    metody:
      
- Włącz śledzenie dla wszystkich interfejsów API, które są obecnie używane przez użytkowników i sprawdź, czy w danych śledzenia możesz otrzymywać jakieś żądania.
 - Wyświetl logi dostępu NGINX
        (
/opt/apigee/var/log/edge-router/nginx/logs/access.log)i sprawdź, czy są jakieś nowe wpisy dla serwerów proxy API dla określonego czasu trwania. - Jeśli rejestrujesz informacje z serwerów proxy interfejsów API na serwerze logów, takim jak Syslog, Splunk, Loggly, itp., możesz sprawdzić, czy te serwery logów zawierają wpisy dla serwerów proxy API dla przez konkretny czas trwania.
 
 - Jeśli w danym okresie nie ma ruchu (brak żądań do interfejsu API), dane analityczne są niedostępna. Zobaczysz komunikat „Brak ruchu w wybranym zakresie dat”. w statystykach panelu.
 
Rozdzielczość
- Wykonywać wywołania co najmniej 1 serwera proxy interfejsu API w określonym środowisku organizacji.
 - Poczekaj kilka sekund, a potem wyświetl panele statystyk na karcie Godzina i sprawdź, czy danych.
 - Jeśli problem będzie się powtarzać, przejdź do sekcji Dane dostępne w Postgres Baza danych, ale nie wyświetla się w UI.
 
Dane są dostępne w bazie danych Postgres, ale nie wyświetlają się w UI
Krótki opis problemu
Najpierw sprawdź dostępność najnowszych danych Analytics w bazie danych Postgres.
Aby sprawdzić, czy w Postgres Master dostępne są najnowsze dane Analytics węzeł:
- Zaloguj się na każdy z serwerów Postgres i uruchom następujące polecenie, aby sprawdzić, czy
    w głównym węźle Postgres:
      
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
 - W głównym węźle Postgres zaloguj się do PostgreSQL:
      
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
 - Sprawdź, czy tabela istnieje dla Twojego środowiska organizacji, przy użyciu następującego zapytania SQL w Postgres
    baza danych:
      
\d analytics."orgname.envname.fact"
 - Sprawdź, czy najnowsze dane są dostępne w bazie danych Postgres przy użyciu tego kodu SQL
    zapytanie:
      
select max(client_received_start_timestamp) from analytics."orgname.envname.fact";
 - Jeśli najnowsza sygnatura czasowa jest bardzo stara (lub ma wartość null), oznacza to, że dane nie są dostępne w bazie danych Postgres. Prawdopodobną przyczyną tego problemu będzie to, że dane nie została przekazana z serwera Qpid do bazy danych Postgres. Przejdź do sekcji Dane Analytics nie są przekazywane do bazy danych Postgres.
 - Jeśli najnowsze dane są dostępne w bazie danych Postgres w węźle głównym, wykonaj wykonaj poniższe czynności, aby dowiedzieć się, dlaczego dane nie wyświetlają się w interfejsie Edge.
 
Diagnostyka
- Włącz Narzędzia dla deweloperów.
    w przeglądarce Chrome i użyj interfejsu API z jednego z paneli analitycznych za pomocą
    następujące kroki:
      
- Z narzędzi dla programistów wybierz kartę Network (Sieć).
 - Rozpocznij nagrywanie.
 - Załaduj ponownie panel Analytics.
 - W panelu po lewej stronie w Narzędziach dla programistów wybierz wiersz zawierający „apiproxy?_Optimized...”.
 - W panelu po prawej stronie w Narzędziach dla programistów kliknij „Nagłówki”. i zwróć uwagę na „URL żądania”.
 
 - Oto przykładowe dane wyjściowe z Narzędzi dla programistów:
      
Przykładowe dane wyjściowe przedstawiające interfejs API używany w panelu wydajności serwera proxy na karcie Sieć panelu Narzędzia dla programistów do obsługi serwera proxy.

 - Uruchom bezpośrednio wywołanie interfejsu Management API i sprawdź, czy uzyskasz wyniki. Oto przykładowy interfejs API
    kliknij kartę Dzień w panelu Wydajność serwera proxy:
      
curl -u username:password "http://management_server_IP_address:8080/v1/organizations/ org_name/environments/env_name/stats/apiproxy?limit=14400& select=sum(message_count),sum(is_error),avg(total_response_time), avg(target_response_time)&sort=DESC&sortby=sum(message_count),sum(is_error), avg(total_response_time),avg(target_response_time)&timeRange=08%2F9%2F2017+ 18:00:00~08%2F10%2F2017+18:00:00&timeUnit=hour&tsAscending=true"
 - Jeśli wyświetlana jest z pomyślna odpowiedź, ale nie ma żadnych danych, oznacza to, że Serwer zarządzania nie może pobrać danych z serwera Postgres z powodu sieci problemów z łącznością.
 - Sprawdź, czy możesz połączyć się z serwerem Postgres z serwera zarządzania:
      
telnet Postgres_server_IP_address 5432
 - Jeśli nie możesz połączyć się z serwerem Postgres, sprawdź, czy jest jakaś zapora sieciowa związane z portem 5432.
 - Jeśli występują ograniczenia zapory sieciowej, może to być przyczyną działania serwera zarządzania. brak możliwości pobrania danych z serwera Postgres.
 
Rozdzielczość
- Jeśli istnieją ograniczenia zapory sieciowej, usuń je, aby serwer zarządzania mógł komunikuje się z serwerem Postgres.
 - Jeśli nie ma ograniczeń zapory sieciowej, ten problem może być spowodowany usterką sieci.
 - Jeśli na serwerze zarządzania wystąpiła awaria sieci, ponowne uruchomienie może rozwiązać problem Google Cloud.
 - Ponownie uruchamiaj wszystkie serwery zarządzania przy użyciu poniższego polecenia:
      
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
 - Sprawdź, czy w interfejsie Edge widzisz dane analityczne.
 
Jeśli nadal nie widzisz danych, skontaktuj się z zespołem pomocy Apigee Edge.
Dane Analytics nie są przekazywane do bazy danych Postgres
Diagnostyka
Jeśli dane nie są przekazywane z serwera Qpid do bazy danych Postgres zgodnie z opisem w sekcji Dane dostępne w bazie danych Postgres, ale nie są wyświetlane w UI, wykonaj te kroki:
- Sprawdź, czy każdy z serwerów Qpid jest uruchomiony i działa, wykonując poniższe polecenie:
      
/opt/apigee/apigee-service/bin edge-qpid-server status
 - Jeśli dowolny z serwerów Qpid nie działa, uruchom go ponownie. Jeśli nie, przejdź do kroku 5.
      
/opt/apigee/apigee-service/bin edge-qpid-server restart
 - Zaczekaj chwilę, a potem ponownie sprawdź, czy najnowsze dane są dostępne w bazie danych Postgres.
      
- Zaloguj się do PostgreSQL:
          
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
 - Uruchom poniższe zapytanie SQL, aby sprawdzić, czy są dostępne najnowsze dane:
          
select max(client_received_start_timestamp) from analytics."orgname.envname.fact";
 
 - Zaloguj się do PostgreSQL:
          
 - Jeśli dostępne są najnowsze dane, pomiń poniższe kroki i przejdź do ostatniego kroku . Jeśli najnowsze dane nie są dostępne, wykonaj następujące czynności: kroków.
 - Sprawdź, czy komunikaty z kolejek serwera Qpid są przekazywane do bazy danych Postgres.
      
- Wykonaj polecenie 
qpid-stat -q commandi sprawdź msgIn oraz Wartości kolumny msgOut. - Oto przykładowe dane wyjściowe, które pokazują, że msgIn i msgOut nie są równe. Oznacza to,
        że wiadomości nie są przekazywane z serwera Qpid do bazy danych Postgres.
          

 
 - Wykonaj polecenie 
 - Jeśli występują rozbieżności w kolumnach msgIn i msgOut, sprawdź Qpid
    Dzienniki serwera 
/opt/apigee/var/log/edge-qpid-server/system.logi sprawdź, czy jakieś błędy. - Możesz zobaczyć komunikaty o błędach, takie jak „Prawdopodobnie PG nadal nie działa” lub 
      „FATAL: przepraszamy, jest już zbyt wielu klientów”, tak jak na ilustracji poniżej:
      
2017-07-28 09:56:39,896 ax-q-axgroup001-persistpool-thread-3 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Found the exception to be retriable - . Error observed while trying to connect to jdbc:postgresql://PG_IP_address:5432/apigee Initial referenced UUID when execution started in this thread was a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d Probably PG is still down. PG set used - [a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d] 2017-07-28 09:56:39,896 ax-q-axgroup001-persistpool-thread-3 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Could not get JDBC Connection; nested exception is org.postgresql.util.PSQLException: FATAL: sorry, too many clients already 2017-07-28 09:56:53,617 pool-7-thread-1 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Found the exception to be retriable - . Error observed while trying to connect to jdbc:postgresql://PG_IP_address:5432/apigee Initial referenced UUID when execution started in this thread was a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d Probably PG is still down. PG set used - [a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d] 2017-07-28 09:56:53,617 pool-7-thread-1 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (FATAL: sorry, too many clients already)
 
Może się tak zdarzyć, jeśli serwer Postgres wykonuje zbyt wiele zapytań SQL lub gdy działa procesor i tym samym nie może odpowiedzieć na serwer Qpid.
Rozdzielczość
- Ponownie uruchom serwer Postgres i PostgreSQL, jak pokazano poniżej:
      
/opt/apigee/bin/apigee-service edge-postgres-server restart
/opt/apigee/bin/apigee-service apigee-postgresql restart
 - Ponowne uruchomienie sprawi, że wszystkie poprzednie zapytania SQL zostaną zatrzymane i powinny zezwalać na nowe z bazą danych Postgres.
 - Załaduj ponownie panele Analytics i sprawdź, czy wyświetlają się dane Analytics.
 
Jeśli problem będzie nadal występował, skontaktuj się z zespołem pomocy Apigee Edge.
Nieprawidłowe wdrożenie Analytics
Diagnostyka
- Uzyskaj stan wdrożenia analityki, korzystając z tego wywołania interfejsu API:
      
curl -u user_email:password http://management_server_host:port /v1/organizations/orgname/environments/envname/provisioning/axstatus
 - Sprawdź stan serwerów Qpid i Postgres w wynikach wywołania interfejsu API.
      
- Jeśli stan serwerów Qpid i Postgres to „SUKCES” oznacza to, że czy serwery analityczne są podłączone prawidłowo. Przejdź do Stale identyfikatory UUID serwera Analytics.
 - Jeśli stan serwerów Qpid/Postgres to „UNKNOWN” lub „FAILURE”, a potem
        oznacza problem z odpowiednim serwerem.
          
W tym scenariuszu na przykład stan serwerów Postgres to „NIEZNANY”:

Może się tak zdarzyć, jeśli podczas wprowadzania analityki wystąpi błąd. Ten błąd zapobiega docieraniu wiadomości z serwerów zarządzania do serwerów Postgres.
 
 
Rozdzielczość
Ten problem można zwykle rozwiązać, ponownie uruchamiając serwery, na których wyświetla się komunikat „FAILURE” lub „NIEZNANY”.
- Uruchom ponownie każdy z serwerów, których stan okablowania analitycznego to „FAILURE” lub „UNKNOWN”
    za pomocą tego polecenia:
      
/opt/apigee/apigee-service/bin/apigee-service component restart
 - Na przykład:
      
- Jeśli problem występuje na serwerach Qpid, ponownie uruchom serwery Qpid:
          
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
 - Jeśli ten problem występuje na serwerach Postgres, uruchom ponownie oba
        Węzły serwera Postgres:
          
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
 
 - Jeśli problem występuje na serwerach Qpid, ponownie uruchom serwery Qpid:
          
 - W powyższym przykładzie wartość „UNKNOWN” dla serwerów Postgres jest wyświetlany komunikat, więc musisz
    w celu ponownego uruchomienia głównego i podrzędnego serwera Postgres:
      
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
 
Nieaktualne identyfikatory UUID serwera Analytics
Diagnostyka
- Pobierz konfigurację Analytics za pomocą tego wywołania interfejsu API:
      
curl -u user_email:password http://management-server-host:port/v1/analytics/groups/ax
Oto przykładowe dane wyjściowe z powyższego interfejsu API:
[ { "name" : "axgroup001", "properties" : { "consumer-type" : "ax" }, "scopes" : [ "myorg~prod", "myorg~test" ], "uuids" : { "aries-datastore" : [ ], "postgres-server" : [ "6777...2db14" ], "dw-server" : [ ], "qpid-server" : [ "774e...fb23", "29f3...8c11" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "774e...8c11" ], "datastores" : [ "6777...db14" ], "properties" : { } } ], "data-processors" : { } } ]
 - Upewnij się, że te informacje w danych wyjściowych są poprawne:
      
- nazwy org-env wymienione w „zakresach” .
 - Identyfikatory UUID serwerów Postgres i serwerów Qpid.
          
- Uzyskaj identyfikatory UUID serwera Postgres, uruchamiając poniższe polecenie na każdym
            Węzły serwera Postgres:
              
curl 0:8084/v1/servers/self/uuid
 - Uzyskaj identyfikatory UUID serwera Qpid, uruchamiając poniższe polecenie dla każdego identyfikatora Qpid
            węzły serwera:
              
curl 0:8083/v1/servers/self/uuid
 
 - Uzyskaj identyfikatory UUID serwera Postgres, uruchamiając poniższe polecenie na każdym
            Węzły serwera Postgres:
              
 
 - Jeśli wszystkie informacje są poprawne, przejdź do sekcji Dane Analytics nie jest przekazywana do bazy danych Postgres.
 - Jeśli identyfikatory UUID Postgres lub serwerów Qpid są nieprawidłowe, być może serwery zarządzania odwołują się do nieaktualnych identyfikatorów UUID,
 
Rozdzielczość
Aby usunąć nieaktualne identyfikatory UUID i dodać prawidłowe identyfikatory UUID serwerów, skontaktuj się z zespołem pomocy Apigee Edge.