Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
Krótki opis problemu
Gdy tworzysz nową organizację przy użyciu skryptu apigee-provision, czasami skrypt jest zamykany i wyświetla się komunikat o błędzie. Jeśli po tym błędzie spróbujesz wyświetlić panel interfejsu Edge lub panel analityki, dla nowo utworzonej organizacji pojawi się komunikat o błędzie The report timed (Przekroczono limit czasu raportu).
Komunikat o błędzie
Po uruchomieniu skryptu apigee-provision w celu utworzenia nowej organizacji może pojawić się ten komunikat o błędzie:
!!!! Error !!!!
HTTP STATUS CODE: 400
{
"code" : "dataapi.service.PGFoundInMultipleGroups",
"message" : "dataapi.service.PGFoundInMultipleGroups",
"contexts" : [ ]
}
Nawet jeśli wystąpi ten błąd, po zakończeniu skryptu obsługi administracyjnej można wykonywać operacje na nowo utworzonej organizacji. Jeśli jednak spróbujesz wyświetlić panel interfejsu Edge, zobaczysz ten komunikat o błędzie dla nowo utworzonej organizacji:
The report timed out
Try again with a smaller date range or a larger aggregation interval.
Oto zrzut ekranu, na którym widać błąd:
Możliwe przyczyny
Przyczyna | Opis | Instrukcje dotyczące rozwiązywania problemów dotyczące |
Konfiguracja wielu grup AX | Z tym samym zestawem serwerów Postgres utworzono wiele grup analitycznych. | Użytkownicy Edge Private Cloud |
Przyczyna: konfiguracja wielu grup AX
Diagnostyka
Uruchom poniższy interfejs Analytics Groups Management API i sprawdź, czy dane wyjściowe pokazują więcej niż jedną zdefiniowaną grupę analityczną. Na przykład:
curl -u adminEmail:adminPwd http://<ms_ip>:8080/v1/analytics/groups/ax
Przykładowe dane wyjściowe przedstawiające 2 grupy statystyk
{ "name":"axgroup-001", "properties":{ }, "scopes":[ ], "uuids":{ "qpid-server":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "postgres-server":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups":[ { "name":"consumer-group-001", "consumers":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties":{ } } ], "data-processors":{ } }, { "name":"axgroup001", "properties":{ "consumer-type":"ax" }, "scopes":[ "017pdspoint~dev", "010test~dev", "019charmo~dev", "009gcisearch1~dev", "000fj~trial-fjwan", "009dekura~dev", "008pisa~dev", "004fjadrms~dev", "018k5billing~dev", "004study14~dev", "001teama~dev", "005specdb~dev", "test~dev", "000fj~prod-fjwan", "012pjweb~dev", "020workflow~dev", "007ikou~prod-fjwan", "003asano~dev", "013mims~dev", "006studyhas~dev", "006efocus~dev", "002wfproto~dev", "008murahata~dev", "016mediaapi~dev", "015skillnet~dev", "014aclmanager~dev", "010fjppei~dev", "000fj~trial", "003esupport~dev", "000fj~prod", "005ooi~dev", "test~elb1", "007fjauth~dev", "011osp~dev", "002study~dev", "999test~dev" ], "uuids":{ "qpid-server":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "aries-datastore":[ ], "postgres-server":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "dw-server":[ ] }, "consumer-groups":[ { "name":"consumer-group-001", "consumers":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties":{ } } ], "data-processors":{ } }
Dane wyjściowe wskazują, że są 2 grupy statystyk: axgroup-001 i axgroup001.
Sprawdź, czy wszystkie grupy w Analytics mają zdefiniowane zakresy.
W przykładowych grupach analitycznych widocznych powyżej grupa analityczna axgroup-001 nie ma zdefiniowanych żadnych zakresów, ale nadal ma serwery Postgres zdefiniowane jako magazyny danych.
Wykonaj poniższe polecenie ze statystykami kolejki Qpid na serwerach Qpid i sprawdź, czy nie ma żadnych wiadomości dla określonej grupy analitycznej zidentyfikowanej w kroku 2.
qpid-stat -q
Przykładowe statystyki kolejki Qpid
Poniższe statystyki kolejki Qpid wskazują, że nie ma żadnych wiadomości dla konkretnej kolejki grupy analitycznej z podanego wyżej przykładu (axgroup-001):
queue (kolejka) d autoDel z wyłączeniem wiadomości msgIn msgOut bajty bytesIn bytesOut wady powiąż 140995fe-71a7-4000-a1f4-71b7a951da7f:0.0 T T 0 0 0 0 0 0 1 2 ax-q-axgroup-001-consumer-group-001 T 0 0 0 0 0 0 12 2 ax-q-axgroup-001-consumer-group-001-dl T 0 0 0 0 0 0 0 2 ax-q-axgroup001-consumer-group-001 T 0 241 TYS. 241 TYS. 0 21,7 g 21,7 g 12 2 ax-q-axgroup001-consumer-group-001-dl T 323 323 0 52,4 mln 52,4 mln 0 0 2 W przypadku określonej grupy analitycznej axgroup-001 nie ma żadnych komunikatów ani ruchu, pojawia się błąd „The report timed out” (Upłynął limit czasu raportu). w panelu interfejsu Edge lub w panelach statystyk.
Rozdzielczość
Aby rozwiązać ten problem, usuń obiekt axgroup
, który nie ma żadnych zakresów i nie rejestruje żadnego ruchu.
Aby usunąć axgroup
:
Krok 1. Usuń konsumentów z konkretnej grupy axgroup.
Użyj poniższego interfejsu API do zarządzania, aby usunąć każdego klienta z grupy
axgroup
:curl -v -u admin@email.com:password -X DELETE -H 'Accept:application/json' -H 'Content-Type:application/json' 'http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/consumer-groups/{consumer-group-name}/consumers/{uuid-of the consumer}'
Powtórz to samo wywołanie interfejsu API, jeśli jest wielu klientów, podając identyfikator UUID każdego z nich w osobnym wywołaniu interfejsu API.
W przykładzie powyżej interfejs API usuwa konsumenta o identyfikatorze UUID
5c1e9690-7b58-499a-a4bb-d54454474b8f:
curl -v -X DELETE -H 'Accept:application/json' -H 'Content-Type:application/json' 'http://localhost:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers/5c1e9690-7b58-499a-a4bb-d54454474b8f' { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
Uruchom ponownie ten sam interfejs API, aby usunąć drugiego konsumenta, którego identyfikator UUID w tym przykładzie to 7794c428-e553-4ed2-843d-69f93bbec8a3.
Krok 2. Usuń grupy użytkowników
Aby usunąć grupy konsumentów z określonego zasobu (
axgroup
), użyj podanego niżej interfejsu API do zarządzania:curl -v -u admin@email.com:password -X DELETE 'http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/consumer-groups/{consumer-group-name}'
Przykład:
Ten interfejs API usuwa nazwę grupy konsumentów consumer-group-001::
curl -v -X DELETE 'http://localhost:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001' { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
Krok 3. Usuń serwery qpid z grupy Axgroup
Użyj poniższego interfejsu API do zarządzania, aby usunąć
qpid-servers
z:axgroup
.curl -X DELETE -u admin@email.com "http://localhost:8080/v1/analytics/groups/ax/{axgroup-name}/servers?uuid={qpid-server-uuid}type=qpid-server" -H "Content-type: application/json"
Jeśli istnieje kilka serwerów Qpid, uruchom to samo wywołanie interfejsu API.
Przykład:
Aby usunąć serwer Qpid o identyfikatorze UUID 7794c428-e553-4ed2-843d-69f93bbec8a3 w tym przykładzie, użyj tego interfejsu API:
curl -X DELETE "http://localhost:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=7794c428-e553-4ed2-843d-69f93bbec8a3&type=qpid-server" -H "Content-type: application/json" { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f" ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } }
Krok 4. Usuń serwery postgres z grupy Axgroup
Jeśli istnieje tylko jeden serwer Postgres, użyj poniższego interfejsu API do zarządzania, aby usunąć serwer Postgres:
curl -v -X DELETE -H 'Accept:application/json' "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/servers?uuid={postgres-server-uuid}&type=postgres-server&force=true"
Jeśli masz konfigurację mastera i podrzędnego serwera Postgres, użyj poniższego interfejsu API do zarządzania, aby usunąć serwery Postgres
curl -v -X DELETE -H 'Accept:application/json' "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/servers?uuid={postgres-master-uuid,postgres-slave-uuid}&type=postgres-server&force=true"
Przykład:
W przykładzie powyżej występują główne i podrzędne serwery Postgres, więc do usunięcia serwerów Postgres możesz użyć tego interfejsu API:
curl -v -X DELETE -H 'Accept:application/json' "http://localhost:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=3b28b790-ec4e-45c5-a8d0-6d6f2088da65,750cd8ba-1799-4dfb-8c74-548010e95e5e&type=postgres-server&force=true" { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ ], "postgres-server" : [ ] }, "consumer-groups" : [ ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
KROK 5. Usuń grupę w Statystykach
Aby usunąć grupę Analytics, użyj poniższego interfejsu API do zarządzania:
curl -v -X DELETE "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}"
Przykład:
curl -v -X DELETE "http://localhost:8080/v1/analytics/groups/ax/axgroup-001" { "properties" : { }, "scopes" : [ ], "uuids" : { }, "consumer-groups" : [ ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
KROK 6. Sprawdź, czy grupa została całkowicie usunięta
Aby sprawdzić, czy dana grupa analityczna została całkowicie usunięta, użyj poniższego interfejsu API zarządzania:
curl -v -u admin@email.com -X GET "http://{mgmt-server-host}:8080/v1/analytics/groups/ax
Przykład:
curl localhost:8080/v1/analytics/groups/ax [ { "name" : "axgroup001", "properties" : { "consumer-type" : "ax" }, "scopes" : [ "017pdspoint~dev", "010test~dev", "019charmo~dev", "009gcisearch1~dev", "000fj~trial-fjwan", "009dekura~dev", "008pisa~dev", "004fjadrms~dev", "018k5billing~dev", "004study14~dev", "001teama~dev", "005specdb~dev", "test~dev", "000fj~prod-fjwan", "012pjweb~dev", "020workflow~dev", "007ikou~prod-fjwan", "003asano~dev", "013mims~dev", "006studyhas~dev", "006efocus~dev", "002wfproto~dev", "016mediaapi~dev", "015skillnet~dev", "014aclmanager~dev", "010fjppei~dev", "000fj~trial", "003esupport~dev", "000fj~prod", "005ooi~dev", "test~elb1", "007fjauth~dev", "011osp~dev", "002study~dev" ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "aries-datastore" : [ ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "dw-server" : [ ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } } ]
Zwróć uwagę, że w powyższych danych wyjściowych nie ma informacji dotyczących konkretnej grupy analitycznej axgroup-001. Jest to potwierdzenie, że grupa axgroup-001 została całkowicie usunięta.
Krok 7. Uruchom ponownie procesy
Te procesy na maszynach Qpid i Postgres:
- Uruchom ponownie apigee-qpidd.
- Uruchom ponownie serwer Edge-qpid-server.
- Ponownie uruchom serwer Edge-postgres-server.
- Uruchom ponownie apigee-postgresql.
Krok 8. Zweryfikuj
Sprawdź, czy dane wyświetlają się w panelach statystyk.
Jeśli problem nadal występuje, przejdź do artykułu Wymagane zbieranie informacji diagnostycznych.
Musi zbierać informacje diagnostyczne
Jeśli po wykonaniu powyższych czynności problem nie ustąpi, zbierz poniższe informacje diagnostyczne. Skontaktuj się z zespołem pomocy Apigee Edge i udostępnij zebrane informacje.
- Konfiguracja architektury instalacji Private Cloud (czyli liczba skonfigurowanych hostów i liczba każdego z komponentów).
Dane wyjściowe tych poleceń:
Grupa Analytics
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/analytics/groups/ax
Statystyki kolejki Qpid na każdej z maszyn Qpid
qpid-stat -q
Stan Analytics
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/organizations/{org-name}/environments/{environment-name}/provisioning/axstatus