Configurar alertas de trânsito

Esta é a documentação do Apigee Edge.
Acesse Documentação da Apigee X.
informações

Use um alerta de trânsito para aumentar uma notificação quando o tráfego de um ambiente, proxy ou região muda em uma determinada porcentagem ao longo de um período.

Você define o período como:

  • 1 hora
  • 1 dia
  • 7 dias
  • 15 dias (somente API)
  • 30 dias (somente API)

O alerta compara o tráfego do período atual com o do período anterior. Por exemplo, você especifica um período de uma hora. O alerta compara o tráfego da hora mais recente em relação ao tráfego da hora anterior para calcular a variação percentual no tráfego:

percentChange = ((currentTraffic - previousTraffic) / previousTraffic) * 100

Um valor positivo significa que o tráfego aumentou e um valor negativo significa que ele diminuiu.

Em seguida, defina o limite que aciona um alerta de tráfego como um aumento ou uma diminuição percentual no tráfego da API. para o período especificado.

Antes de definir essa porcentagem, verifique se ela está alinhada com seu os padrões de tráfego locais. Por exemplo, se o tráfego da API costuma variar ao longo do dia, com picos de tráfego por hora de até 100%. em certos horários de pico, esses picos são normais e não devem acionar um alerta. No entanto, se você configura um alerta que é acionado em caso de aumento de 50% no tráfego por hora, você vai receber alertas desnecessários para seu tráfego normal.

Para mais informações sobre alertas, consulte Configurar alertas e notificações.

Adicionar alertas e notificações de trânsito

Para adicionar alertas e notificações de trânsito:
  1. Clique em Analisar > Regras de alerta na interface do usuário do Edge.
  2. Clique em +Alerta.
  3. Digite as seguintes informações gerais sobre o alerta:
    Campo Descrição
    Nome do alerta Nome do alerta. Use um nome que descreva o acionador e que seja significativo para você. O nome não pode ter mais de 128 caracteres.
    Descrição Descrição do alerta.
    Tipo de alerta Selecione Tráfego total. Consulte Sobre os tipos de alerta para saber mais.
    Ambiente Selecione o ambiente na lista suspensa.
    Status Opção para ativar ou desativar a política.
  4. Defina o limite e a dimensão da condição que acionará o alerta.
    Campo de condição Descrição
    Limite

    Especifique para gerar o alerta quando o tráfego aumentar ou diminuiu uma porcentagem específica em comparação com um intervalo de tempo anterior.

    Defina a porcentagem aumentada em como um valor maior ou igual a 0%. Defina a porcentagem de diminuição em como um valor maior ou igual a 0%. e menor ou igual a 100%.

    Você pode escolher um intervalo de tempo de:

    • 1 hora
    • 1 dia
    • 1 semana
    Dimensão

    Clique em + Adicionar dimensão e especifique os detalhes da dimensão para os quais você quer retornar resultados, incluindo: o proxy de API e a região.

    Defina uma dimensão específica para:

    • Proxy: defina como um proxy específico ou como Todos os proxies. Proxy não aceita valor "Any". Em vez é possível adicionar um alerta separado para cada proxy em que você está interessado.
    • Região: defina como uma região específica ou como Todas as regiões. Region não aceita o valor "Any". Em vez é possível adicionar um alerta separado para cada região em que você tem interesse.
  5. Clique em + Notificação para adicionar uma notificação de alerta.
    Detalhes da notificação Descrição
    Channel Selecione o canal de notificação que você quer usar e especifique o destino: E-mail, Slack, PagerDuty ou Webhook.
    Destino Especifique o destino com base no tipo de canal selecionado:
    • E-mail: endereço de e-mail, como joe@company.com
    • Slack: URL do canal do Slack, como https://hooks.slack.com/services/T00000000/B00000000/XXXXX
    • PagerDuty: código do PagerDuty, como o abcd1234efgh56789
    • Webhook: URL do webhook, como https://apigee.com/test-webhook

      Observação: é possível especificar apenas um destino por notificação. Para especificar vários destinos para o mesmo tipo de canal, adicione mais notificações.

  6. Para adicionar outras notificações, repita a etapa anterior.
  7. Se você adicionou uma notificação, defina os campos a seguir:
    Campo Descrição
    Manual (Opcional) Campo de texto livre para fornecer uma breve descrição das ações recomendadas para e resolver os alertas quando são disparados. Também é possível especificar um link para sua wiki interna ou página da comunidade na qual você pode consultar as práticas recomendadas. As informações neste campo serão incluído na notificação. O conteúdo nesse campo não pode exceder 1.500 caracteres.
    Throttle Frequência de envio das notificações. Selecione um valor na lista suspensa.
  8. Clique em Salvar.

Conferir alertas no painel de eventos

Quando o Edge detecta uma condição de alerta, ele a registra automaticamente no Painel Events na interface do Edge. Lista de eventos exibidos no painel "Eventos". inclui todos os alertas, fixos e certificados.

Para ver um alerta:

  1. Clique em Analisar > Eventos na IU do Edge. O novo painel "Eventos" é exibido:

  2. Filtre o painel "Eventos" por:

    • Ambiente
    • Região
    • Período
  3. Selecione uma linha no painel de eventos para mostrar o keystore que contém o certificado prestes a expirar para investigar mais detalhadamente o alerta. Na página "Keystore", faça upload de um novo certificado e exclua o certificado prestes a expirar.

Usar as APIs de alerta com alertas de trânsito

A maioria das APIs que você usa para criar e gerenciar alertas de trânsito é igual às que você usa com outros tipos de alerta:

No entanto, algumas APIs têm mais prioridades usadas para oferecer suporte a alertas de anomalias. Veja abaixo alguns exemplos:

Criar ou atualizar um alerta de trânsito

Use as mesmas APIs para criar ou update um alerta de trânsito, como já é feito para outros tipos de alerta. O corpo da chamada de API para criar ou atualizar um alerta de tráfego é o mesmo usado para outros alertas, com as seguintes alterações:

  • Adicione as novas propriedades a seguir para especificar que o alerta é um alerta de tráfego:

    "alertType": "runtime"
    "alertSubType": "trafficfixed"

    Os valores padrão dessas propriedades são:

    "alertType": "runtime"
    "alertSubType": "fixed"
  • No elemento dimensions da matriz conditions:
    • Defina os valores de org, env, proxy e region. Apenas essas propriedades são compatíveis. Você pode definir proxy e region como ALL.
    • Defina o valor da propriedade traffic como total.
  • Na matriz conditions:

    • A propriedade metrics precisa ter o valor trafficChange.
    • A propriedade comparator precisa ser definida como increasedBy ou decreasedBy.
    • A propriedade threshold contém um valor positivo que especifica um aumento ou uma diminuição percentual no tráfego. em que o valor 1.0 corresponde a 100%. Para increasedBy, o valor precisa ser maior ou igual a 0,0 (0%). Para decreasedBy, o valor precisa ser maior ou igual a 0,0 (0%) e menor ou igual a 1,0 (100%).
    • A propriedade durationSeconds precisa ser definida como um dos seguintes valores: 3600 (1 hora), 86400 (1 dia), 604800 (7 dias), 1296000 (15 dias), 2592000 (30 dias) .
  • A propriedade reportEnabled não é compatível com alertas de trânsito.
. O exemplo a seguir mostra como configurar um alerta que é acionado quando o tráfego de organização e ambiente aumenta 50% em um período de uma hora. Uma notificação é enviada ao código PagerDuty 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":"My Traffic Alert",
     "description":"My traffic alert",
     "environment":"prod",
     "enabled":true,
     "alertType":"runtime",
     "alertSubType":"trafficfixed",
     "conditions":[
     {
        "description":"",
        "dimensions": {
            "org":"nyorg",
            "env":"prod",
            "proxy":"ALL",
            "region":"ALL",
            "traffic":"total"
        },
        "metric": "trafficChange",
        "threshold": 0.5,
        "durationSeconds": 3600,
        "comparator": "increasedBy"
     }
     ],
     "notifications":[{ "channel":"pagerduty", "destination":"abcd1234efgh56789"}],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
}'

Defina $ACCESS_TOKEN como token de acesso do OAuth 2.0, conforme descrito em Receber um token de acesso do OAuth 2.0. Para saber mais sobre as opções de cURL usadas neste exemplo, consulte Usar cURL.

Consulte Ver eventos para mais informações sobre como usar essa API.

Receba alertas de trânsito

Por padrão, a API Get Alerts retorna informações sobre todos os alertas definidos. Agora, essa API usa parâmetros de consulta para que você filtre os resultados:

  • enabled: se true 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ão runtime, o padrão, e cert.
  • alertSubType: especifica o subtipo de alerta a ser retornado. O valor padrão não é definido, ou seja, retorna todos os subtipos de alerta.

Por exemplo, use a seguinte chamada de API para retornar apenas alertas de ativação 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 trânsito, ativados e desativados:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=trafficfixed'

Defina $ACCESS_TOKEN como token de acesso do OAuth 2.0, conforme descrito em Receber um token de acesso do OAuth 2.0. Para saber mais sobre as opções de cURL usadas neste exemplo, consulte Usar cURL.