Niestandardowe wymiary nie pojawiają się, jeśli skonfigurowano wiele grup

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//environments//properties 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//environments//properties 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:

  1. 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.
  2. 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'
    
  3. Włącz statystyki za pomocą Włącz Analytics API
  4. 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
    
  5. 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
  6. 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:

  1. Serwer Edge dla Postgres /opt/apigee/var/log/edge-postgres-server/logs/system.log od ostatniego ponownego uruchomienia.
  2. Dane wyjściowe następującego wywołania interfejsu Management API:
    curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"
    
  3. Dane wyjściowe drzewa ZooKeeper uzyskane za pomocą następującego polecenia:
    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt