Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
Krótki opis problemu
Zmienna niestandardowa utworzona za pomocą metody Aktualna zasada StatisticsCollector niewidoczne w obszarze Wymiary niestandardowe w raportach niestandardowych Analytics w interfejsie Edge.
Komunikaty o błędach
Nie zaobserwowano żadnych błędów.
Możliwe przyczyny
W tabeli poniżej znajdziesz możliwe przyczyny tego problemu:
Przyczyna | Dla: |
---|---|
Zmienna niestandardowa jest niezgodna ze standardowymi wytycznymi | Użytkownicy Edge Private Cloud i użytkownicy chmury publicznej |
Brak ruchu w serwerze proxy interfejsu API implementującym zasadę StatisticsCollector | Użytkownicy Edge Private Cloud i użytkownicy chmury publicznej |
Zmienna niestandardowa nie została przekazana na serwer Postgres | Użytkownicy Edge Private Cloud |
Kliknij odpowiedni link w tabeli, aby zobaczyć możliwe rozwiązania problemu.
Zmienna niestandardowa jest niezgodna ze standardowymi wytycznymi
Diagnostyka
Jeśli nazwa zmiennej niestandardowej używana w zasadzie StatisticsCollector nie muszą być zgodne ze standardowymi wytycznymi (patrz Rozwiązanie), nie pojawi się ona w raportach niestandardowych.
Fragment kodu poniżej pokazuje, że nazwa zmiennej „product id” ma pokój, dlatego nie będzie widoczny w wymiarze niestandardowym w raporcie niestandardowym.
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="productID" ref="product id" type="string">999999</Statistic> </Statistics> </StatisticsCollector>
Rozdzielczość
Nazwy zmiennych niestandardowych używane w zasadzie InsightsCollector w interfejsie API powinien przestrzegać następujących wytycznych:
- Nazwy mogą obejmować znaki [a–z][0–9] i „_”.
- Nazwy nie mogą zawierać spacji. Na przykład w powyższym przykładzie kodu nazwa zmiennej należy zmienić na „product_id”.
- Wielkość liter jest ignorowana.
- Zarezerwowane słowa kluczowe wymienione w tabeli pod tym linkiem nie są jest dozwolona. Na przykład „użytkownik” jest niedozwolone. Więcej informacji: Słowa kluczowe SQL.
Jeśli problem będzie się powtarzał, przejdź do: Brak ruchu w serwerze proxy interfejsu API implementowanym przez zasadę StatisticsCollector.
Brak ruchu przez serwer proxy interfejsu API implementujący zasadę StatystykCollector
Diagnostyka
Jeśli nie ma ruchu na serwerze proxy interfejsu API, który implementuje StatisticsCollector , zmienna niestandardowa nie będzie widoczna w raportach niestandardowych.
Rozdzielczość
Wykonaj niektóre wywołania serwera proxy interfejsu API, który implementuje StatisticsCollector .
Zaczekaj chwilę i sprawdź, czy zmienne niestandardowe pojawiają się w wymiarach niestandardowych w Raport niestandardowy.
Jeśli problem będzie się powtarzał, przejdź do sekcji Zmienna niestandardowa nie została przekazana do serwer Postgres.
Zmienna niestandardowa nie została przekazana na serwer Postgres
Diagnostyka
Po utworzeniu zmiennej niestandardowej na serwerze proxy interfejsu API i wywołaniach interfejsu API makro jest najpierw przechowywana w pamięci w procesorze wiadomości. Komunikat Następnie procesor wysyła informacje o nowej zmiennej do ZooKeeper, który Z kolei wysyła ją do serwera Postgres, aby dodać ją jako kolumnę w Postgres w bazie danych.
Czasami powiadomienie z ZooKeeper może nie dotrzeć do serwera Postgres z powodu sieci. problemów. Z powodu tego błędu zmienna niestandardowa może nie wyświetlać się w sekcji Raport niestandardowy.
Aby określić, gdzie brakuje zmiennej niestandardowej:
- Wygeneruj drzewo ZooKeeper za pomocą następującego polecenia:
/opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt
- Wyszukaj zmienną niestandardową w danych wyjściowych drzewa ZooKeeper.
- Jeśli zmienna niestandardowa istnieje w drzewie ZooKeeper, wykonaj
tych poleceń, aby sprawdzić, czy zmienna niestandardowa została dodana do Postgres
baza danych:
- W węźle Postgres zaloguj się w PostgreSQL:
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
- Uruchom to zapytanie SQL:
select column_name, data_type, character_maximum_length from INFORMATION_SCHEMA.COLUMNS where table_name = 'orgname.envname.fact';
- W węźle Postgres zaloguj się w PostgreSQL:
- Bardzo prawdopodobne, że w kolumnie zmiennej niestandardowej tabeli faktów, która jest przyczyną jej niewyświetlania w wymiarach niestandardowych.
Rozdzielczość
Rozwiązanie nr 1. Uruchom ponownie serwer Postgres
- Ponownie uruchom serwer Postgres, aby wymusić odczyt wszystkich informacji związanych z
Statystyki z Zookeeper:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
Jeśli problem będzie się powtarzał, zastosuj rozwiązanie nr 2.
Rozwiązanie 2. Włącz wymuszanie dodawania usługi
Włącz właściwość forceonboard, wykonując te czynności:
- Utwórz plik
/opt/apigee/customer/application/postgres-server.properties
serwer Postgres, jeśli jeszcze nie istnieje. - Dodaj do tego pliku ten wiersz:
conf_pg-agent_forceonboard=true
- Sprawdź, czy ten plik należy do Apigee, korzystając z tego polecenia:
chown apigee:apigee /opt/apigee/customer/application/postgres-server.properties
- Ponownie uruchom serwer Postgres:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- Jeśli masz więcej niż jeden serwer Postgres, powtórz powyższe kroki na wszystkich Serwery Postgres.
- Wycofaj wdrożenie i wdróż serwer proxy interfejsu API korzystający ze StatystykCollector .
- uruchamiać wywołania interfejsu API;
- Sprawdź, czy zmienne niestandardowe pojawiają się w wymiarach niestandardowych w sekcji „Niestandardowe” Zgłoś.
Jeśli problem będzie nadal występował, skontaktuj się z zespołem pomocy Apigee Edge.