Consulta de invocaciones de API dentro de un período
Función
Esta API se utiliza para consultar el número de veces que se invoca a una API durante un período. The query can be based on 1 minute, 1 hour, or 1 day.
- Si el intervalo de tiempo es dentro de una hora, el servidor devuelve los datos de los últimos N minutos, con el número de llamadas API recopiladas cada minuto.
- Si el intervalo de tiempo está dentro de un día, el servidor devuelve los datos de las últimas N horas (o N + 1 horas si N no es un entero) con el número de invocaciones de API recopiladas cada hora. Por ejemplo, si el intervalo de tiempo está dentro de 2 a 3 horas, se devolverán los datos de las últimas 2 + 1 horas.
- Si el intervalo de tiempo es superior a un día, el servidor devuelve los datos de los últimos N días (o N + 1 días si N no es un entero) con el número de invocaciones de API recopiladas todos los días.
Por motivos de seguridad, borre los registros de operaciones, incluidos, entre otros, los registros de los directorios ~/.bash_history y /var/log/messages (si los hay), después de ejecutar el comando curl en el servidor para consultar información.
URI
La siguiente tabla muestra el método de solicitud HTTP/HTTPS y el URI de la API.
Método de solicitud |
URI |
---|---|
GET |
/v1.0/apigw/statistics/api/latest?api_id=[api_id]&duration=[duration] |
Solicitud
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
api_id |
Sí |
String |
ID de API |
duration |
Sí |
String |
Rango de tiempo (unidad h o m). Por ejemplo, 1h se refiere a la última hora y 1m se refiere al último minuto. |
Respuesta
Parámetro |
Tipo |
Descripción |
Tipo de operación |
---|---|---|---|
code |
String |
Código de respuesta |
R |
msg |
String |
Mensaje de la respuesta |
R |
start_time |
Long |
Marca de tiempo (UTC) de la hora de inicio |
R |
end_time |
Long |
Marca de tiempo (UTC) de la hora de finalización |
R |
list |
Structure |
Datos estadísticos |
R |
Parámetro |
Tipo |
Descripción |
Tipo de operación |
---|---|---|---|
cycle |
String |
Intervalo (reservado) |
R |
api_id |
String |
ID de API |
R |
current_minute |
Long |
Marca de tiempo (UTC) del acceso a la API |
R |
group_id |
String |
ID de grupo de API |
R |
provider |
String |
Proveedores de API |
R |
req_count |
Integer |
Número total de solicitudes |
R |
max_latency |
Integer |
Latencia máxima |
R |
avg_latency |
Double |
Latencia media |
R |
max_backend_latency |
Integer |
Latencia máxima de backend |
R |
avg_backend_latency |
Double |
Latencia media de backend |
R |
max_inner_latency |
Integer |
Latencia máxima de gateway |
R |
avg_inner_latency |
Double |
Latencia media de gateway |
R |
output_throughput |
Integer |
Rendimiento descendente (bytes) |
R |
input_throughput |
Integer |
Rendimiento ascendente (bytes) |
R |
req_count4xx |
Integer |
Número total de códigos de respuesta 4xx |
R |
req_count5xx |
Integer |
Número total de códigos de respuesta 5xx |
R |
req_count2xx |
Integer |
Número total de códigos de respuesta 2xx |
R |
req_count_error |
Integer |
Número de errores |
R |
register_time |
String |
Tiempo de grabación (aaa-MM-dd HH: mm: ss) |
R |
req_time |
String |
Tiempo de solicitud de API (aaaa-MM-dd HH:mm:ss) |
R |
status |
Integer |
Estado (reservado) |
R |
Ejemplo de respuesta:
{ "code":"APIG.0000", "msg":"", "start_time":1524735000, "end_time":1524735000, "list":[ { "api_id":"ae12b59fef2e4c6b8e01d44e98b738c0", "current_minute":1524735000, "group_id":"26463e4b2445415eabb55b2414012989", "provider":"d4ef919b31bd43d3927c5d46c71b68c4", "req_count":45, "max_latency":59, "avg_latency":2.53, "max_backend_latency":0, "avg_backend_latency":0, "max_inner_latency":59, "avg_inner_latency":2.53, "output_throughput":31815, "input_throughput":334474, "req_count4xx":0, "req_count5xx":0, "req_count2xx":45, "req_count_error":0, "register_time":"2018-04-26 17:30:48", "req_time":"2018-04-26 17:30:00", "status":1 } ] }
Códigos de estado
Código de estado |
Descripción |
---|---|
200 |
Consulta exitosa |