Sie sehen die Dokumentation zu Apigee Edge.
Zur Apigee X-Dokumentation weitere Informationen
Symptom
Wenn Sie das Skript apigee-provision zum Erstellen einer neuen Organisation verwenden, wird das Skript manchmal mit einer Fehlermeldung beendet. Wenn Sie versuchen, das Edge-UI-Dashboard oder Analyse-Dashboards aufzurufen, wird für die neu erstellte Organisation die Fehlermeldung Das Zeitlimit für den Bericht wurde überschritten angezeigt.
Fehlermeldung
Wenn Sie das Skript apigee-provision ausführen, um eine neue Organisation zu erstellen, wird möglicherweise die folgende Fehlermeldung angezeigt:
!!!! Error !!!!
HTTP STATUS CODE: 400
{
"code" : "dataapi.service.PGFoundInMultipleGroups",
"message" : "dataapi.service.PGFoundInMultipleGroups",
"contexts" : [ ]
}
Selbst wenn dieser Fehler angezeigt wird, können Sie mit der neu erstellten Organisation fortfahren, nachdem das Bereitstellungsskript beendet wurde. Wenn Sie jedoch versuchen, das Edge-UI-Dashboard aufzurufen, wird die folgende Fehlermeldung für die neu erstellte Organisation angezeigt:
The report timed out
Try again with a smaller date range or a larger aggregation interval.
Hier ist ein Screenshot, auf dem der Fehler zu sehen ist:
Mögliche Ursachen
Ursache | Beschreibung | Gilt für die Anleitung zur Fehlerbehebung |
Mehrere AX-Gruppen einrichten | Es wurden mehrere Analysegruppen mit denselben Postgres-Servern erstellt. | Edge Private Cloud-Nutzer |
Ursache: Einrichtung mehrerer AX-Gruppen
Diagnose
Führen Sie die folgende Analytics Groups Management API aus und prüfen Sie, ob in der Ausgabe mehr als eine Analytics-Gruppe definiert ist. Beispiel:
curl -u adminEmail:adminPwd http://<ms_ip>:8080/v1/analytics/groups/ax
Beispielausgabe mit zwei Analysegruppen
{ "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":{ } }
Diese Ausgabe zeigt, dass es die beiden Analysegruppen axgroup-001 und axgroup001 gibt.
Prüfen Sie, ob für alle Analysegruppen Bereiche definiert sind.
In der oben gezeigten Beispielausgabe von Analysegruppen sind für die Analysegruppe axgroup-001 keine Bereiche definiert, es sind jedoch Postgres-Server als Datenspeicher definiert.
Führen Sie den unten angegebenen Befehl für die Qpid-Warteschlangenstatistiken auf den Qpid-Servern aus und prüfen Sie, ob für die in Schritt 2 angegebene Analysegruppe keine Nachrichten eingehen.
qpid-stat -q
Beispiel für Statistiken zu Qpid-Warteschlangen
Die folgenden Qpid-Warteschlangenstatistiken zeigen, dass für die spezifische Analysegruppen-Warteschlange aus dem oben genannten Beispiel (axgroup-001) keine Nachrichten eingehen:
Warteschlange Während autoDel ohne msg msgIn msgOut Byte bytesIn bytesOut Nachteile bind 140995fe-71a7-4000-a1f4-71b7a951da7f:0.0 Ja Ja 0 0 0 0 0 0 1 2 ax-q-axgroup-001-consumer-group-001 Ja 0 0 0 0 0 0 12 2 ax-q-axgroup-001-consumer-group-001-dl Ja 0 0 0 0 0 0 0 2 ax-q-axgroup001-consumer-group-001 Ja 0 241.000 241.000 0 21,7 g 21,7 g 12 2 ax-q-axgroup001-consumer-group-001-dl Ja 323 323 0 52.4m 52.4m 0 0 2 Da keine Nachrichten/Traffic für die spezifische Analysegruppe axgroup-001 gesendet werden, wird im Dashboard der Edge-Benutzeroberfläche oder in den Analyse-Dashboards der Fehler „Zeitüberschreitung bei Bericht“ angezeigt.
Auflösung
Um dieses Problem zu beheben, löschen Sie die axgroup
, die keine Bereiche hat und keinen Traffic empfängt.
Folgen Sie der Anleitung unten, um axgroup
zu löschen :
Schritt 1: Nutzer für die jeweilige axgroup löschen
Verwenden Sie die folgende Verwaltungs-API, um die einzelnen Nutzer aus dem
axgroup
zu entfernen: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}'
Wenn mehrere Nutzer vorhanden sind, wiederholen Sie den oben genannten API-Aufruf und geben Sie die UUID jedes Nutzers in einem separaten API-Aufruf an.
Im obigen Beispiel entfernt die folgende API den Nutzer mit der 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 }
Führen Sie dieselbe API noch einmal aus, um den anderen Nutzer zu löschen, dessen UUID im aktuellen Beispiel 7794c428-e553-4ed2-843d-69f93bbec8a3 ist.
Schritt 2 : Nutzergruppen entfernen
Verwenden Sie die folgende Management API, um die Nutzergruppen aus dem jeweiligen
axgroup
zu entfernen: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}'
Example:
Mit der folgenden API wird der Name der Verbrauchergruppe consumer-group-001: gelöscht:
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 }
Schritt 3: qpid-server aus axgroup löschen
Verwenden Sie die folgende Verwaltungs-API, um
qpid-servers
aus dem jeweiligenaxgroup
zu löschen.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"
Führen Sie denselben API-Aufruf noch einmal aus, wenn mehrere Qpid-Server vorhanden sind.
Example:
Verwenden Sie die folgende API, um den Qpid-Server mit der UUID 7794c428-e553-4ed2-843d-69f93bbec8a3 in diesem Beispiel zu löschen:
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" : { } }
Schritt 4: Postgres-Server aus axgroup löschen
Verwenden Sie die folgende Verwaltungs-API, um den Postgres-Server zu löschen, wenn ein einzelner Postgres-Server vorhanden ist:
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"
Verwenden Sie die folgende Verwaltungs-API, um die Postgres-Server zu löschen, wenn Sie einen Master- und einen Postgres-Slave eingerichtet haben
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"
Example:
Im obigen Beispiel gibt es Master- und Slave-Postgres-Server, sodass Sie die folgende API zum Löschen der Postgres-Server verwenden können:
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 }
SCHRITT 5: Analysegruppe entfernen
Verwenden Sie die folgende Verwaltungs-API, um die Analysegruppe zu entfernen:
curl -v -X DELETE "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}"
Example:
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 }
SCHRITT 6: Prüfen, ob die Gruppe vollständig entfernt wurde
Mit der folgenden Verwaltungs-API können Sie prüfen, ob die jeweilige Analysegruppe vollständig entfernt wurde:
curl -v -u admin@email.com -X GET "http://{mgmt-server-host}:8080/v1/analytics/groups/ax
Example:
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" : { } } ]
Wie Sie sehen, enthält die obige Ausgabe keine Informationen zu einer bestimmten Analysegruppe axgroup-001. Damit bestätigen Sie, dass axgroup-001 vollständig entfernt wurde.
Schritt 7: Prozesse neu starten
Die folgenden Prozesse auf den Qpid- und Postgres-Maschinen:
- Starten Sie apigee-qpidd neu.
- Starten Sie „edge-qpid-server“ neu.
- Starten Sie den Edge-Postgres-Server neu.
- Starten Sie apigee-postgresql neu.
Schritt 8: Bestätigen
Überprüfen Sie, ob die Daten in den Analyse-Dashboards angezeigt werden.
Wenn das Problem weiterhin besteht, lesen Sie den Artikel Diagnoseinformationen müssen erfasst werden.
Diagnoseinformationen müssen erfasst werden
Wenn das Problem trotz Befolgen der obigen Anweisungen weiterhin besteht, stellen Sie die folgenden Diagnoseinformationen zusammen. Wenden Sie sich an den Apigee Edge-Support und geben Sie die gesammelten Informationen weiter.
- Architektureinrichtung Ihrer Private Cloud-Installation (Anzahl der eingerichteten Hosts, Anzahl der einzelnen Komponenten).
Ausgabe der folgenden Befehle:
Analytics-Gruppe
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/analytics/groups/ax
Statistiken der Qpid-Warteschlange auf allen Qpid-Maschinen
qpid-stat -q
Analytics-Status
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/organizations/{org-name}/environments/{environment-name}/provisioning/axstatus