Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
Krótki opis problemu
Zmienna niestandardowa utworzona za pomocą metody Gromadzący statystyki tej zasady nie jest widoczna w obszarze Wymiary niestandardowe w raportach niestandardowych Analytics w Interfejs Edge.
Komunikat o błędzie
Dziennik systemowy Edge-postgres-server po ponownym uruchomieniu będzie zawierał następujący błąd: kombinacja organizacja i środowisko, w której brakuje ścieżki:
KeeperErrorCode = NoNode for /organizations/<ORG>/environments/<ENV>/properties 2018-03-29 16:14:48,980 pool-10-thread-2 ERROR ZOOKEEPER - ZooKeeperServiceImpl.getData() : Could not get data for path: /organizations//environments/ /properties, reason: KeeperErrorCode = NoNode for /organizations/ /environments/ /properties
Możliwe przyczyny
Przyczyna | Opis | Instrukcje dotyczące rozwiązywania problemów dotyczące |
---|---|---|
Brak ścieżki właściwości Zookeeper dla kombinacji organizacji i środowiska. | Gdy ścieżka ZooKeeper /organizations/
brakuje wartości, nie można tworzyć wymiarów niestandardowych. |
Użytkownicy Edge Private Cloud |
Przyczyna: brak ścieżki właściwości ZooKeeper dla kombinacji organizacji i środowiska
Diagnostyka
Analytics można włączyć dla kombinacji organizacja-środowisko za pomocą
Włącz Analytics API, który wypełnia pole /organizations/
na drzewie ZooKeeper. Jeśli ten interfejs API ulegnie awarii, komponent Edge-postgres-server nie będzie mógł tworzyć
wymiarów niestandardowych, ale w pliku system.log pojawi się następujący błąd:
KeeperErrorCode = NoNode for /organizations/example/environments/prod/properties 2018-03-29 16:14:48,980 pool-10-thread-2 ERROR ZOOKEEPER - ZooKeeperServiceImpl.getData() : Could not get data for path: /organizations/example/environments/prod/properties, reason: KeeperErrorCode = NoNode for /organizations/digi/environments/sandbox/properties
Zwykle dzieje się tak, gdy do programu zostaje dodana więcej niż jedna organizacja. Analytics używa tych samych identyfikatorów UUID serwera postgres. Aby sprawdzić, ile statystyk istnieją grupy, uruchom następujące wywołanie interfejsu API:
curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"
Jeśli ten interfejs API zwraca wiele grup, najprawdopodobniej jest to przyczyna problemu. W poniższym przykładzie zwróć uwagę, że istnieją 2 grupy różniące się tylko łącznikiem: axgroup-001 i axgroup001
[ { "name" : "axgroup-001", "properties" : { }, "scopes" : [ "VALIDATE~test" ], "uuids" : { "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "datastores" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ], "properties" : { } } ], "data-processors" : { } }, { "name" : "axgroup001", "properties" : { }, "scopes" : [ "example~prod" ], "uuids" : { "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "datastores" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ], "properties" : { } } ], "data-processors" : { }
Problem występuje w przypadku, gdy identyfikator UUID serwera postgres jest skonfigurowany dla każdego axgroup jest taka sama. Można to szybko sprawdzić w ten sposób:
curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"|grep -B7 "postgres-server"
Poniżej znajdziesz przykładowe dane wyjściowe, które pozwalają szybko porównać identyfikatory UUID serwera postgres, aby określić są takie same:
{ "name" : "axgroup-001", "properties" : { }, "scopes" : [ "VALIDATE~test" ], "uuids" : { "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ]-- "name" : "axgroup001", "properties" : { }, "scopes" : [ "myorg~prod" ], "uuids" : { "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "aries-datastore" : [ ], "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ],
Rozdzielczość
Tego samego zestawu serwerów PostgreSQL nie można przypisać do 2 grup axgroups. Najszybszym sposobem rozwiązania problemu jest usunięcie informacji o serwerze postgres z jednej grupy axgroup i przypisać do niej wszystkie zakresy (kombinacje organizacji i środowiska). Aby to zrobić: wykonaj te czynności:
- Postępując zgodnie z instrukcjami, usuń komponenty serwera postgres z jednej z 2 grup axgrup. w: dodawanie i usuwanie komponentów Analytics w grupach analitycznych. Jeśli problemy występują tylko w zakresach nieprodukcyjnych, wybierz grupę axgroup, która NIE ma zakresu produkcyjnego dla tego ćwiczenia. W przeciwnym razie wybierz grupę axgroup z atrybutem jak najmniejszej liczby zakresów.
- Usuń z grupy axgroup wszystkie zakresy, które nie mają już serwerów postgres, oraz te
w przypadku których występuje problem z wymiarem niestandardowym z ich grupy grup. Przy założeniu,
axgroup-001
z powyższego przykładu to grupa, której chcesz użyć. muszą użyć tego, aby usunąć zakres dla organizacji myorg: oraz środowisko prod:curl -u username:password -X DELETE 'http://management-server-host:8080/v1/analytics/groups/ax/axgroup001/scopes?org=myorg&env=prod'
- Włącz statystyki za pomocą Włącz Analytics API
- Uruchom ponownie komponent Edge-postgres-server w węźle głównym Postgres oraz
zainstalowane komponenty Edge-qpid-server za pomocą następujących poleceń:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- Sprawdź, czy błąd podany w sekcji Komunikat o błędzie powyżej
nie występuje już w pliku dziennika serwera Postgres
/opt/apigee/var/log/edge-postgres-server/logs/system.log
- Sprawdź, czy wymiary niestandardowe pojawiają się w interfejsie Edge.
Jeśli problem nie ustąpi, przejdź do artykułu Wymagane jest 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 nimi i udostępnij je zespołowi pomocy Apigee Edge:
- Serwer Edge dla Postgres
/opt/apigee/var/log/edge-postgres-server/logs/system.log
od ostatniego ponownego uruchomienia. - Dane wyjściowe następującego wywołania interfejsu Management API:
curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"
- Dane wyjściowe drzewa ZooKeeper uzyskane za pomocą następującego polecenia:
/opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt