Omówienie interfejsu API Analytics

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

W tym temacie przedstawiamy omówienie interfejsu Edge API Analytics.

Film: obejrzyj krótki film przedstawiający usługi Analytics w interfejsie Edge API.

Udoskonal swój interfejs API dzięki analityce

Edge API Analytics gromadzi i oblicza mnóstwo informacji przepływających przez serwery proxy interfejsów API. Możesz wizualizować te dane za pomocą wykresów w interfejsie Edge lub pobrać nieprzetworzone dane do analizy offline za pomocą interfejsów Edge Management API.

Dzięki Analytics możesz uzyskać odpowiedzi na najczęstsze pytania, takie jak:

  • Jak zmienia się ruch z mojego interfejsu API na przestrzeni czasu?
  • Które metody interfejsu API są najpopularniejsze?
  • Kim są moi najlepsi deweloperzy?
  • Kiedy czas odpowiedzi interfejsu API jest najkrótszy? Wolniej?
  • Gdzie pod względem geograficznym odnotowuję największy ruch związany z interfejsami API?

Odpowiedzi na takie pytania pomogą Ci ulepszać interfejsy API, rozwiązywać problemy i podejmować lepsze decyzje biznesowe związane z Twoim programem do obsługi tych interfejsów.

Interfejs API Analytics pomaga wszystkim użytkownikom

W ciągłym procesie zbierania, analizowania i wizualizacji danych Edge API Analytics pomaga Twojemu zespołowi ds. API ulepszać interfejsy API i deweloperom aplikacji:

alt_text
  • Zespół ds. interfejsów API – zespół ds. interfejsów API wykorzystuje wewnętrzne systemy do tworzenia interesujących interfejsów API. Zespół ds. interfejsów API chce się dowiedzieć, jak radzi sobie dany program, jak działają poszczególne interfejsy API oraz jak je ulepszyć.
  • Deweloperzy aplikacji – udostępniając dane analityczne deweloperom aplikacji, uzyskujesz lepsze aplikacje. Ci deweloperzy wprowadzają innowacje w ramach Twojego interfejsu API i tworzą aplikacje do tworzenia kreacji, które pomogą Twojej firmie zwiększać przychody. Dzięki Analytics deweloperzy aplikacji mogą sprawdzać, jak radzą sobie ich aplikacje i w jakim stopniu przyczyniają się one do generowania przychodów firmy. Deweloperzy aplikacji chcą wiedzieć, jak mogą je ulepszyć.
  • Zespół operacyjnyzespół operacyjny chce zrozumieć wzorce ruchu i przewidywać, kiedy należy dodać zasoby backendu lub wprowadzić inne istotne korekty.
  • Właściciel firmywłaściciel firmy chce sprawdzić, czy inwestycje w interfejsy API się opłacają i w które obszary zainwestować w przyszłości.

Jakiego rodzaju dane są gromadzone i analizowane?

Edge API Analytics gromadzi i analizuje szeroki zakres danych przesyłanych przez serwery proxy interfejsów API, takie jak:

  • Czas odpowiedzi
  • Czas oczekiwania na żądanie
  • Rozmiar żądania
  • Błędy związane z celem
  • Nazwa usługi API
  • Adres e-mail dewelopera
  • Nazwa aplikacji
  • Wiele innych

Pełną listę danych zbieranych przez interfejs API Analytics znajdziesz w artykule Dane, wymiary i filtry Analytics.

Jak mogę zbierać niestandardowe dane analityczne?

Edge natywnie gromadzi ogromne dane. Możesz też zbierać niestandardowe dane analityczne dotyczące serwerów proxy interfejsu API, aplikacji, usług lub deweloperów. Możesz np. zbierać dane analityczne z parametrów zapytań, nagłówków żądań, treści żądań i odpowiedzi lub zmiennych zdefiniowanych w interfejsach API.

Niestandardowe dane analityczne zbierasz za pomocą zasad StatisticsCollector. Po wyodrębnieniu danych niestandardowych możesz je zbadać za pomocą interfejsu użytkownika lub interfejsu API Analytics. Dokładny przykład pokazujący, jak zbierać niestandardowe dane analityczne, znajdziesz w artykule Analizowanie treści wiadomości interfejsu API przy użyciu statystyk niestandardowych.

Różnice między danymi Analytics a danymi monitorowania interfejsu API

W tej sekcji opisujemy kilka drobnych różnic między danymi zbieranymi przez Edge Analytics i przez API Monitoring. Monitorowanie interfejsów API i Analytics używają różnych potoków danych, więc możesz zauważyć drobne różnice między raportami niestandardowymi wygenerowanymi przez usługę Monitoring a raportami generowanymi przez Analytics. Możesz na przykład zauważyć rozbieżności w raportowanych wynikach związanych z błędami przekroczenia limitu czasu – zarówno czasu oczekiwania backendu (kod stanu HTTP 504 w żądaniu), jak i limitów czasu klienta (kod stanu HTTP 499). W niestandardowych raportach Analytics mogą się one pojawiać z kodem stanu 200, ale w raportach niestandardowych usługi Monitoring – kod stanu 504 lub 499.

Kiedy i jak długo są dostępne moje dane analityczne?

Dostępne są 2 przedziały czasowe, które określają, kiedy i jak długo możesz wyświetlać dane analityczne:

  • Odstęp czasu opóźnienia danych – po wywołaniu serwera proxy interfejsu API może minąć do 10 minut, zanim dane staną się dostępne do wyświetlania lub poprzez wywołania interfejsu API zarządzania.
  • Przechowywanie danych – czas, przez jaki dane analityczne są przechowywane przez Edge różni się w zależności od abonamentu. W zależności od abonamentu dane analityczne mogą być dostępne z ostatnich 30, 60, 90 lub 365 dni.

Jak mogę uzyskać dostęp do swoich danych analitycznych?

Edge API Analytics udostępnia narzędzia do wizualizacji danych wbudowane w interfejs użytkownika Edge. Do narzędzi tych należą wstępnie zdefiniowane panele analityczne i raporty niestandardowe, które wyświetlają dane w postaci wykresów oraz pozwalają analizować dane pogrupowane według różnych wymiarów (np. według serwera proxy interfejsu API, adresu IP lub kodu stanu HTTP).

Dane analityczne możesz też pobierać przy użyciu interfejsu Edge Management API. Po pobraniu możesz je zaimportować do własnych narzędzi do wizualizacji danych lub do własnego systemu analitycznego.

Panele informacyjne Analytics

Interfejs Edge zawiera zestaw wstępnie zdefiniowanych paneli, których możesz używać do wyświetlania danych analitycznych. Na przykład na tych obrazach widać panel Wydajność serwera proxy:

Ten panel zawiera wykresy:

  • Całkowity ruch – łączna liczba żądań do interfejsu API odebranych przez Edge w przypadku środowiska interfejsu API w organizacji.
  • Sukces – łączna liczba żądań, które zakończyły się pomyślną odpowiedzią. Odpowiedzi z błędami nie są liczone.
  • Błędy ruchu – łączna liczba wszystkich nieudanych żądań do interfejsu API, które nie zakończyły się uzyskaniem odpowiedzi. Liczba obejmuje zarówno błędy serwera proxy (po stronie Apigee), jak i błędy celu (usługi backendu).
  • Średni TPS: średnia liczba żądań do interfejsu API i wynikowych odpowiedzi na sekundę.

Dodatkowe wstępnie zdefiniowane panele to:

Więcej informacji o tych wstępnie zdefiniowanych panelach znajdziesz w artykule Korzystanie z paneli informacyjnych.

Raporty niestandardowe

Raporty niestandardowe umożliwiają zgłębianie konkretnych danych interfejsu API i wyświetlanie dokładnie tych danych, które Cię interesują. Możesz utworzyć raport niestandardowy, używając dowolnych danych analitycznych wbudowanych w Edge lub niestandardowych danych analitycznych zebranych przez zasadę StatisticsCollector.

Tworząc raport niestandardowy, możesz wybrać dane, które chcesz widzieć (dane), pogrupować je w znaczący sposób (wymiary) i opcjonalnie ograniczyć ilość zwracanych danych na podstawie określonych cech danych (filtrowanie).

Możesz też określić typ wykresu wyświetlanego w raporcie niestandardowym w postaci wykresu kolumnowego lub liniowego. Te grafiki przedstawiają przykładowe wykresy dotyczące transakcji na sekundę zgrupowane według serwera proxy interfejsu API:

  • Kolumna – każdy serwer proxy interfejsu API jest reprezentowany przez inną kolumnę:

    Niestandardowy wykres kolumnowy

  • Wiersz – każdy serwer proxy interfejsu API jest reprezentowany jako osobny wiersz:

    Niestandardowy wykres liniowy

Więcej informacji znajdziesz w artykule Tworzenie raportów niestandardowych i zarządzanie nimi.

Interfejs Analytics API

Używanie interfejsu Edge Management API do pobierania danych analitycznych. Dzięki interfejsowi API możesz np. tworzyć własne narzędzia do wizualizacji i umieszczać je w portalach lub aplikacjach niestandardowych.

Oto przykładowe wywołanie interfejsu API do pobierania danych analitycznych dla serwerów proxy interfejsu API:

curl  https://api.enterprise.apigee.com/v1/o/org_name/environments/test/stats/apiproxy?"select=sum(message_count)&timeRange=6/24/2018%2000:00~6/24/2018%2023:59&timeUnit=hour" \
-u email:password

Ta rozmowa zwróci:

  • Suma żądań (liczby wiadomości) na serwer proxy interfejsu API
  • Przez 24 godziny
  • Pogrupowane według godzin

Parametr zapytania timeRange określa okres w postaci:

?timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM

Zwróć uwagę na %20 przed HH:MM. Parametr timeRange wymaga znaku spacji zakodowanego w adresie URL przed HH:MM lub znaku +, jak w tym przykładzie: MM/DD/YYYY+HH:MM~MM/DD/YYYY+HH:MM.

Więcej informacji znajdziesz w artykule o używaniu interfejsów API wskaźników do pomiaru wydajności programu interfejsów API.

Eksportowanie danych analitycznych do Google Cloud

Za pomocą interfejsu Edge Management API możesz wyeksportować z Edge z całego dnia wszystkie dane analityczne z całego dnia do własnego repozytorium danych, takiego jak Google Cloud Storage lub BigQuery. Następnie możesz wykorzystać zaawansowane możliwości zapytań i systemów uczących się udostępniane przez Google Cloud BigQuery i TensorFlow, aby przeprowadzać własną analizę danych.

Więcej informacji znajdziesz w artykule Eksportowanie danych z Analytics.

Jak udostępniać dane deweloperom aplikacji?

Gdy myślisz o deweloperach aplikacji jak o klientach, zadbaj o to, aby mieli dostęp do narzędzi i informacji, które pozwolą im jak najlepiej wykorzystać Twój interfejs API.

alt_text

Deweloperzy aplikacji nie tylko martwią się o jakość swoich aplikacji, ale także bardzo interesują się Twoimi interfejsami API. Portale dla deweloperów w aplikacji Drupal zawiera opcjonalną stronę Wydajność aplikacji, która zapewnia deweloperom dostęp do ważnych danych dotyczących ich aplikacji. Ta strona zawiera informacje dla deweloperów:

  • Błędy: które błędy interfejsu API pojawiają się w aplikacji?
  • Wydajność: czy interfejs API działa obecnie wolno? Które metody interfejsu API działają obecnie zwykle powoli lub powoli?
  • Dostępność: czy interfejs API działa obecnie?
  • Limit: czy dla interfejsu API obowiązuje limit? W jaki sposób jako deweloper aplikacji stosuję się do limitów?

Więcej informacji:

Możesz też udostępniać statystyki deweloperom:

Jak wygenerować pełne dane analityczne?

Co mamy na myśli, mówiąc „pełne statystyki”? Możesz na przykład utworzyć serwer proxy interfejsu API, a Edge będzie zbierać dane analityczne o tym serwerze proxy. A co z danymi dotyczącymi dewelopera lub aplikacji, które nazywały się proxy interfejsu API? Jeśli Edge nie wie, kto wywołał interfejs API, nie może zebrać tych danych.

Musisz wykonać kilka czynności, aby przeglądarka Edge mogła określić, którzy deweloperzy i które aplikacje wywołują Twoje serwery proxy interfejsu API. Oto lista czynności, które należy wykonać, wraz z linkami do bardziej szczegółowych informacji:

  1. Utwórz co najmniej jedną usługę API, która jest grupą serwerów proxy interfejsu API wraz z abonamentem. Zobacz Zarządzanie usługami API.
  2. Zarejestruj deweloperów aplikacji w Edge. Zobacz Rejestrowanie deweloperów aplikacji.
  3. Zarejestruj aplikacje i wygeneruj klucze interfejsu API dla swoich deweloperów. Przeczytaj sekcję Rejestrowanie aplikacji i zarządzanie kluczami interfejsu API.
  4. Dodaj do serwerów proxy interfejsów API zasady zabezpieczeń, które pozwalają zweryfikować klucze interfejsu API lub tokeny zabezpieczeń. Zapoznaj się z tymi tematami:Weryfikowanie klucza interfejsu API, Zasady OAuthV2 i Weryfikowanie zasad JWT.
  5. Jeśli korzystasz z Edge Microgateway, sprawdź, czy masz włączoną wtyczkę Analytics (która domyślnie jest włączona). Jeśli wtyczka analityki jest wyłączona, Edge Microgateway nie wysyła danych analitycznych do narzędzi analitycznych Edge.

Z tych samouczków dowiesz się, jak wyświetlać statystyki dla deweloperów i aplikacji: Zabezpieczanie interfejsu API przez wymaganie kluczy interfejsu API i Zabezpieczanie interfejsu API za pomocą protokołu OAuth.

Porównaj API Analytics z monitorowaniem API

Możesz korzystać zarówno z monitorowania interfejsów API, jak i z API Analytics. API Monitoring analizuje dane analityczne, aby dostarczać w czasie rzeczywistym kontekstowe statystyki dotyczące wydajności interfejsu API, co pozwala szybko diagnozować problemy i ułatwiać działania naprawcze w celu zapewnienia ciągłości działania. Monitorowanie interfejsów API zostało zaprojektowane do szybkiego znajdowania miejsc problemów w interfejsach API i backendach. Interfejs API Analytics został zaprojektowany do rejestrowania szerokiego zakresu danych analitycznych do wykorzystania przez kilka różnych zespołów, ale dane te są zwykle używane do analizy w scenariuszach niezwiązanych z czasem rzeczywistym.

Jedną z głównych różnic między monitorowaniem interfejsów API a usługą API Analytics jest mechanizm alertów wbudowany w monitorowanie interfejsów API. W alertach określa się kod stanu HTTP (2xx/4xx/5xx), czas oczekiwania lub kod błędu, który po jego przekroczeniu powoduje wysłanie alertu do zespołu operacyjnego. Powiadomienia o alertach mogą być wysyłane za pomocą różnych kanałów, takich jak e-maile, Slack, pagery lub webhooki, co pozwala na natychmiastowe reagowanie na problemy.

Bardziej szczegółowe porównanie tych usług znajdziesz w artykule Porównanie monitorowania interfejsów API z usługą Edge API Analytics.

Więcej informacji