Como enviar estatísticas de tráfego da API para a Apigee

Todos os clientes do Edge para nuvem privada precisam enviar estatísticas sobre a API o tráfego de proxy para a Apigee. A Apigee recomenda que você faça upload dessas informações uma vez por dia, possivelmente criar um cron job.

Você deve enviar as estatísticas para suas implantações de API de produção, mas não para APIs em desenvolvimento ou teste de implantações. Na maioria das instalações do Edge, você define organizações ou ambientes para suas APIs de produção. As estatísticas que você enviar são referentes apenas à produção organizações e ambientes.

Enviar suas estatísticas de tráfego de API para a Apigee

Para enviar suas estatísticas à Apigee:

  1. Colete os dados usando a API Edge Management.
  2. Envie os dados por e-mail para: Edge.apiops@google.com

É necessário repetir esse processo para cada organização de produção e na sua instalação do Edge.

Coletar os dados

Use o comando curl a seguir para coletar dados de tráfego de uma organização específica e ambiente para um intervalo de tempo especificado:

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"

Esse comando usa a API de contagem de mensagens da API Edge Get. Nesse comando:

  • apigee_mgmt_api_email:apigee_mgmt_api_password especifica Endereço de e-mail de uma conta com acesso às APIs Edge /stats.
  • ms_IP é o endereço IP ou nome DNS do Edge. Management Server.
  • org_name e env_name especificam organização e ambiente.
  • apiproxy é a dimensão que agrupa métricas por proxies de API.
  • MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour especifica o período dividido em unidades de tempo das métricas a serem coletadas. Observe que o O comando curl usa o código hexadecimal %20 para espaços no fuso horário do intervalo 10.240.0.0/16.

Por exemplo, para reunir as contagens de mensagens do proxy de API hora a hora em um período de 24 horas, use o seguindo chamada de 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"

timeRange contém caracteres codificados para uso em URLs.

Você verá uma resposta no formato:

{
  "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" ]
  }
}