Co monitorować

Ogólnie rzecz biorąc, w konfiguracji produkcyjnej należy włączyć mechanizmy monitorowania w Wdrożenie Apigee Edge na potrzeby chmury prywatnej. Te techniki monitorowania ostrzegają sieć administratorów (lub operatorów) błędu lub awarii. Każdy wygenerowany błąd jest zgłaszany jako w Apigee Edge. Więcej informacji o alertach znajdziesz w artykule Monitorowanie sprawdzonych metod.

Komponenty Apigee dzielą się głównie na 2 kategorie:

  • Usługi serwera Java w Apigee: obejmują funkcje zarządzania Serwer, procesor wiadomości, serwer Qpid i serwer Postgres.
  • Usługi innych firm: to między innymi Nginx Router, Apache Cassandra Apache ZooKeeper, OpenLDAP, baza danych PostgreSQL i Qpid.

W przypadku lokalnego wdrożenia Apigee Edge poniżej znajdziesz parametry, które możesz monitorować:

Komponent Testy systemu Statystyki na poziomie procesu Kontrole na poziomie interfejsu API Testy przepływu wiadomości Specyficzny dla komponentu

Usługi Java specyficzne dla Apigee

Serwer zarządzania

procesor komunikatów

Serwer Qpid

Serwer Postgres

Usługi innych firm

Apache Cassandra,

Apache ZooKeeper

OpenLDAP

Baza danych PostgreSQL

Qpid

Router Nginx

Ogólnie po zainstalowaniu Apigee Edge możesz wykonywać te monitorowanie zadania do śledzenia wydajności instalacji Apigee Edge for Private Cloud.

Kontrole stanu systemu

Pomiar parametrów stanu systemu, takich jak wykorzystanie procesora czy pamięci, jest bardzo ważny. wykorzystanie i połączenia portów na wyższym poziomie. Możesz monitorować poniższe parametry, aby: poznasz podstawy stanu systemu.

  • Wykorzystanie procesora:określa podstawowe statystyki (Użytkownik/System/IO) Oczekiwanie/Brak aktywności) dotyczące wykorzystania procesora. Na przykład łączna liczba procesorów używanych przez system.
  • Wolna/wykorzystywana pamięć: określa wykorzystanie pamięci systemowej w bajtach. Może to być na przykład pamięć fizyczna używana przez system.
  • Wykorzystanie miejsca na dysku: określa informacje o systemie plików na podstawie danych. bieżące wykorzystanie dysku. Dotyczy to na przykład miejsca na dysku twardym wykorzystywanego przez system.
  • Średnia obciążenia: określa liczbę procesów oczekujących na uruchomienie.
  • Statystyki sieci:pakiety sieciowe oraz bajty przesyłane i/lub oraz błędy transmisji określonego komponentu.

Procesy/sprawdzenie aplikacji

Na poziomie procesu możesz wyświetlić ważne informacje o wszystkich procesach, które są w domu. Obejmują one na przykład statystyki wykorzystania pamięci i procesora i sposobu ich wykorzystania. W przypadku procesów takich jak Qpid, Postgres Postmaster, Java i tak dalej możesz monitorować :

  • Identyfikacja procesu: zidentyfikuj konkretny proces Apigee. Przykład: możesz monitorować, czy istnieje proces Java serwera Apigee.
  • Statystyki wątków: wyświetla podstawowe wzorce wątków, których używa proces. zastosowań. Możesz na przykład monitorować szczytową liczbę wątków i wątków we wszystkich procesach.
  • Wykorzystanie pamięci: wyświetlanie wykorzystania pamięci przez wszystkie procesy Apigee. Możesz na przykład monitorować parametry takie jak wykorzystanie pamięci sterty czy wykorzystanie pamięci innej niż sterta proces.

Kontrole na poziomie interfejsu API

Na poziomie interfejsu API możesz monitorować, czy serwer działa w przypadku często używanego interfejsu API połączeń przesyłanych przez Apigee przez serwer proxy. Można na przykład sprawdzić interfejs API na serwerze zarządzania, routerze i procesora wiadomości, wywołując to polecenie curl:

curl http://host:port/v1/servers/self/up

Gdzie host to adres IP komponentu Apigee Edge. port jest niepowtarzalny dla każdego komponentu Edge. Na przykład:

Serwer zarządzania: 8080

  • Router: 8081
  • Procesor komunikatów: 8082
  • itd.

Informacje o uruchamianiu tego polecenia w przypadku każdego z nich znajdziesz w sekcjach poniżej składnik

To wywołanie zwraca wartość „true” (prawda) i „false”. Aby uzyskać najlepsze wyniki, możesz też wysyłać wywołania interfejsu API bezpośrednio w backendzie (z którym oprogramowanie Apigee współpracuje), aby szybko określić sprawdzić, czy błąd występuje w środowisku oprogramowania Apigee czy w backendzie.

Sprawdzanie przepływu wiadomości

Możesz zbierać dane dotyczące przepływu wiadomości od routerów i podmiotów przetwarzających wiadomości wzorcem/statystykami. Dzięki temu możesz monitorować:

  • Liczba aktywnych klientów
  • Liczba odpowiedzi (10X, 20X, 30X, 40X i 50X)
  • Nieudane połączenia

Ułatwia to udostępnienie paneli informacyjnych dla przepływu komunikatów interfejsu API. Więcej informacji: Jak monitorować dane.

Kontrola stanu routera procesora wiadomości

Router wdraża mechanizm kontroli stanu w celu określenia, które procesory wiadomości. działają zgodnie z oczekiwaniami. W przypadku wykrycia, że procesor wiadomości nie działa lub wolno działa, router może automatycznie wyłączy procesor wiadomości z rotacji. W takim przypadku router zapisuje „Znacznik” do pliku dziennika routera pod adresem /opt/apigee/var/log/edge-router/logs/system.log

Możesz monitorować plik dziennika routera pod kątem tych komunikatów. Jeśli na przykład router pobierze Procesor wiadomości poza rotacją zapisuje komunikat w logu w postaci:

2014-05-06 15:51:52,159 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now DISCONNECTED. handle = MP_IP at 1399409512159
2014-04-17 12:54:48,512 org: env: nioEventLoopGroup-2-2 INFO HEARTBEAT - HBTracker.gotResponse() : No HeartBeat detected from /MP_IP:PORT Mark Down

Gdzie MP_IP:PORT to adres IP i numer portu procesora wiadomości.

Jeśli później router przeprowadzi kontrolę stanu i ustali, że procesor wiadomości działa poprawnie, router automatycznie przełącza procesor wiadomości z powrotem w rotację. Router zapisuje również znaczniki do dziennika w formularzu:

2014-05-06 16:07:29,054 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now CONNECTED. handle = IP at 1399410449054
2014-04-17 12:55:06,064 org: env: nioEventLoopGroup-4-1 INFO HEARTBEAT - HBTracker.updateHB() : HeartBeat detected from IP:PORT Mark Up