Wszyscy klienci Edge for Private Cloud muszą przesyłać statystyki dotyczące interfejsu API ruchu przez serwer proxy do Apigee. Apigee zaleca przesyłanie tych informacji raz dziennie, najlepiej w celu utworzenia zadania cron.
Musisz przesyłać statystyki wdrożeń produkcyjnych interfejsu API, ale nie interfejsów API w trakcie opracowywania lub testowania wdrożeń. W większości instalacji Edge musisz zdefiniować konkretne organizacje lub środowisk produkcyjnych interfejsów API. Przesłane statystyki dotyczą wyłącznie organizacji i środowisk.
Przesyłanie do Apigee statystyk ruchu z interfejsu API
Aby przesłać statystyki do Apigee:
- Zbierz dane za pomocą interfejsu Edge Management API.
- Wyślij dane e-mailem na adres Edge.apiops@google.com.
Musisz powtórzyć ten proces w przypadku każdej organizacji produkcyjnej w środowisku Edge.
Zbieranie danych
Aby zebrać dane o ruchu w określonej organizacji – użyj tego polecenia curl
środowiska w określonym przedziale czasu:
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://ms_IP:8080/v1/organizations/org_name/environments/env_name/stats/apiproxy?select=sum(message_count)&timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour"
To polecenie używa interfejsu API liczby wiadomości interfejsu Edge Get API. W tym poleceniu:
- apigee_mgmt_api_email:apigee_mgmt_api_password określa Adres e-mail konta z dostępem do interfejsów API Edge /stats.
- ms_IP to adres IP lub nazwa DNS urządzenia Edge Serwer zarządzania.
- org_name i env_name określają organizacji i środowiska.
- apiproxy to wymiar grupujący wskaźniki według serwerów proxy API.
MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour
określa zakresu czasu podzielonego na jednostki czasowe danych do zebrania. Zwróć uwagę, że Poleceniecurl
używa kodu szesnastkowego%20
dla spacji w czasie zakres dat.
Aby na przykład zbierać informacje o liczbie komunikatów serwera proxy interfejsu API co godzinę w okresie 24 godzin, użyj funkcji obserwowane: Wywołanie interfejsu API.
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://192.168.56.103:8080/v1/organizations/myOrg/environments/prod/stats/apiproxy?select=sum(message_count)&timeRange=01%2F01%2F2018%2000%3A00~01%2F02%2F2018%2000%3A00&timeUnit=hour"
(Pamiętaj, że timeRange
zawiera znaki zakodowane w adresie URL).
Odpowiedź powinna mieć następujący format:
{ "environments" : [ { "dimensions" : [ { "metrics" : [ { "name" : "sum(message_count)", "values": [ { "timestamp": 1514847600000, "value": "35.0" }, { "timestamp": 1514844000000, "value": "19.0" }, { "timestamp": 1514840400000, "value": "58.0" }, { "timestamp": 1514836800000, "value": "28.0" }, { "timestamp": 1514833200000, "value": "29.0" }, { "timestamp": 1514829600000, "value": "33.0" }, { "timestamp": 1514826000000, "value": "26.0" }, { "timestamp": 1514822400000, "value": "57.0" }, { "timestamp": 1514818800000, "value": "41.0" }, { "timestamp": 1514815200000, "value": "27.0" }, { "timestamp": 1514811600000, "value": "47.0" }, { "timestamp": 1514808000000, "value": "66.0" }, { "timestamp": 1514804400000, "value": "50.0" }, { "timestamp": 1514800800000, "value": "41.0" }, { "timestamp": 1514797200000, "value": "49.0" }, { "timestamp": 1514793600000, "value": "35.0" }, { "timestamp": 1514790000000, "value": "89.0" }, { "timestamp": 1514786400000, "value": "42.0" }, { "timestamp": 1514782800000, "value": "47.0" }, { "timestamp": 1514779200000, "value": "21.0" }, { "timestamp": 1514775600000, "value": "27.0" }, { "timestamp": 1514772000000, "value": "20.0" }, { "timestamp": 1514768400000, "value": "12.0" }, { "timestamp": 1514764800000, "value": "7.0" } ] } ], "name" : "proxy1" } ], "name" : "prod" } ], "metaData" : { "errors" : [ ], "notices" : [ "query served by:53dab80c-e811-4ba6-a3e7-b96f53433baa", "source pg:6b7bab33-e732-405c-a5dd-4782647ce096", "Table used: myorg.prod.agg_api" ] } }