Wszyscy klienci korzystający z Edge dla chmury prywatnej muszą przesyłać do Apigee statystyki dotyczące ruchu przez serwery proxy interfejsu API. Apigee zaleca przesyłanie tych informacji raz dziennie, na przykład przez utworzenie zadania cron.
Musisz przesłać statystyki dotyczące wdrożeń produkcyjnych interfejsów API, ale nie interfejsów API we wdrożeniach deweloperskich lub testowych. W większości instalacji Edge definiuje się konkretne organizacje lub środowiska dla produkcyjnych interfejsów API. Przesyłane statystyki dotyczą tylko tych organizacji i środowisk produkcyjnych.
Przesyłanie statystyk ruchu związanego z interfejsem API do Apigee
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 i środowiska w instalacji Edge.
Zbieranie danych
Aby zebrać dane o ruchu w określonej organizacji i środowisku w określonym przedziale czasu, użyj tego polecenia curl:
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 Edge Get API message count 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 serwera zarządzania Edge.
- org_name i env_name określają organizację i środowisko.
- apiproxy to wymiar, który grupuje dane według serwerów proxy interfejsu API.
MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hourokreśla zakres czasu podzielony na jednostki czasu danych do zebrania. Zwróć uwagę, że poleceniecurlużywa kodu szesnastkowego%20dla spacji w zakresie czasu.
Aby na przykład zebrać liczbę komunikatów proxy interfejsu API godzina po godzinie w ciągu 24 godzin, użyj tego wywołania 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 na potrzeby adresu URL).
Powinna pojawić się odpowiedź w takiej formie:
{
"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" ]
}
}