Esta é a documentação do Apigee Edge.
Acesse
Documentação da Apigee X. informações
A maioria das APIs que você usa para criar e gerenciar alertas de anomalias e coletar métricas de anomalias é as mesmas que usa com alertas fixos. As seguintes APIs de alerta funcionam da mesma maneira para alertas corrigidos e de anomalia:
- Receber um alerta: receba uma definição de alerta de correção ou anomalia.
- Acessar o histórico de alertas: acesse as métricas do histórico de alertas.
- Excluir um alerta: exclua uma definição de alerta corrigida ou anomalia.
- Ver instância de alerta: veja informações sobre um alerta acionado.
- Receber contagem de alertas: veja a contagem total de alertas.
No entanto, algumas APIs têm mais prioridades usadas para oferecer suporte a alertas de anomalias. Veja abaixo alguns exemplos:
- Receber alertas: liste todos os alertas, inclusive os corrigidos e de anomalias.
- Criar um alerta: crie um alerta corrigido ou de anomalia.
- Atualizar um alerta: atualize uma definição de alerta corrigida ou de anomalia.
Como definir $ACCESS_TOKEN
Todas as chamadas de API mostradas abaixo transmitem as credenciais em uma variável de ambiente chamada $ACCESS_TOKEN
.
Defina $ACCESS_TOKEN
como token de acesso do OAuth 2.0, conforme descrito em
Receber um token de acesso do OAuth 2.0.
Para informações sobre as opções de cURL usadas nesses exemplos, consulte
Usar cURL (em inglês).
Receber alertas
Por padrão, a opção Receber alertas A API retorna informações sobre todos os alertas definidos. Agora, essa API usa parâmetros de consulta para que você filtre os resultados:
enabled
: setrue
especifica que são retornados apenas alertas ativados. O valor padrão éfalse
.alertType
: especifica o tipo de alerta a ser retornado. Os valores permitidos sãoruntime
, o padrão,cert
.alertSubType
: especifica o subtipo de alerta a ser retornado. O valor padrão não é definido, o que significa que retorna todos os subtipos de alerta. Especifiqueanomaly
para retornar alertas de anomalias.
Por exemplo, use a seguinte chamada de API para retornar apenas os alertas para a organização chamada
myorg
:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'
A chamada a seguir retorna apenas alertas de anomalias, ativados e desativados:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=anomaly'
Criar ou atualizar um alerta de anomalia
Use as mesmas APIs para criar ou atualizar um alerta de anomalias como é feito atualmente para um alerta fixo. O corpo da chamada de API para criar ou atualizar um alerta de anomalia é o mesmo usado para um alerta fixo, com as seguintes alterações:
Você precisa adicionar as novas propriedades a seguir para especificar que o alerta é uma anomalia:
"alertType": "runtime" "alertSubType": "anomaly"
Os valores padrão dessas propriedades são:
"alertType": "runtime" "alertSubType": "fixed"
Na matriz
conditions
:A propriedade
metrics
assume apenas os valores de:count
: gera um alerta sobre contagens de erros HTTP.totalLatency
: gera um alerta de latência.
- A propriedade
threshold
usa uma string em vez de um número. Os valores aceitos incluem:slight
,moderate
esevere
. - As propriedades
durationSeconds
ecomparator
não são compatíveis.
No elemento
dimensions
da matrizconditions
:- Defina o valor da propriedade
proxy
comoALL
. - A propriedade
statusCode
aceita apenas o valor4xx, 503, 504, and 5xx
. - As propriedades
developerApp
,collection
,faultCodeCategory
,faultCodeSubCategory
efaultCodeName
não são compatíveis.
- Defina o valor da propriedade
- A propriedade
reportEnabled
não é compatível com alertas de anomalias.
O exemplo de chamada de API a seguir cria um alerta de anomalia que é acionado quando os códigos de status 5xx ocorrem a uma taxa moderada para todos os proxies de API no ambiente prod de qualquer região. Uma notificação é enviada para o endereço de e-mail especificado quando o alerta é acionado.
curl 'https://apimonitoring.enterprise.apigee.com/alerts' \ -X POST \ -H 'Accept: application/json, text/plain, */*' -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -d '{ "organization":"myorg", "name":"5xx Anomaly Alert", "description":"My 5xx alert", "environment":"prod", "enabled":true, "alertType": "runtime", "alertSubType": "anomaly", "conditions":[ { "description":"", "dimensions":{ "org":"myorg", "env":"prod", "proxy":"ALL", "region":"ANY", "statusCode":"5xx" }, "metric":"count", "threshold": "moderate" } ], "notifications":[{ "channel":"email", "destination":"ops@acme.com" }], "playbook":"http://acme.com/myplaybook.html", "throttleIntervalSeconds":3600 }'
Usar a API de eventos com anomalias
Use a API /metrics/events
para acessar todos os eventos de uma organização por um intervalo de tempo especificado. A lista de eventos inclui
anomalias detectadas pelo Edge e qualquer alerta acionado. Os alertas podem incluir alertas fixos e de anomalias.
Por padrão, a API retorna todos os eventos da hora anterior. Use os parâmetros de consulta from
e
to
para especificar uma duração diferente. Os valores do parâmetro de consulta from
e to
para especificar uma duração diferente.
Por exemplo, a seguinte chamada de API retorna todos os eventos na organização
myorg
referentes às 12 horas anteriores:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ "https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&from=-12h&to=now"
Defina $ACCESS_TOKEN
como token de acesso do OAuth 2.0, conforme descrito em
Receber um token de acesso do OAuth 2.0. Para informações sobre
as opções de cURL usadas neste exemplo, consulte Usar cURL (em inglês).
A próxima chamada retorna todos os eventos de anomalia com um limite moderado nas últimas 24 horas:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ "https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&type=anomaly&threshold=moderate&from=-24h&to=now"
Apenas o parâmetro de consulta org
é necessário para esta API. Junto com os parâmetros de consulta
descritos no documento da API em /metrics/events
,
essa API é compatível com as seguintes opções para oferecer compatibilidade com a detecção de anomalias:
Nome | Descrição | Padrão |
---|---|---|
threshold
|
Filtre eventos pelo limite especificado: Permitido apenas quando você define |
Todas as gravidades |
type
|
Filtre eventos pelo tipo especificado: alert ou anomaly .
Especifique diversos valores como uma lista separada por vírgulas.
|
Todos os tipos |