Criando Novos Alertas: Total Calls

O alerta de tipo Total Calls é disparado quando uma quantidade total de chamadas em um dado período é atingida ou não atingida, a depender das configurações.

Na etapa EVENT de criação do alerta, você define o que deve ser monitorado e com que frequência. Estas são as seções de cadastro:

O cadastro padrão de alertas é feito a partir de valores absolutos que, quando ultrapassados ou não ultrapassados em um determinado período (a depender da configuração), dispararão uma notificação.

Mas também é possível incluir alertas que disparam notificações quando os valores cadastrados são atingidos em relação a um período passado. Nesse caso, os valores não são absolutos, mas indicam uma referência de comparação entre performance atual e passada. Essa comparação é configurada no campo COMPARE WITH PAST PERIOD.

Primeira seção

A primeira seção de cadastro compreende estas informações iniciais a serem completadas:

  • Name: nome para ajudar a identificar o alerta (não precisa ser único).

  • Tags: campo para incluir tags (ou etiquetas) opcionais que podem ser utilizadas para encontrar alertas mais facilmente (tanto na tela Runtime Alerts quanto em Triggered Alerts). É possível incluir até 50 tags por alerta e cada uma pode ter até 70 caracteres.

    As etiquetas servem para categorizar os alertas seguindo os rótulos que fizerem sentido para o seu negócio. Por exemplo, você pode adicionar etiquetas para identificar APIs por unidade de negócio, para distinguir ambientes de desenvolvimento ou testes relacionados ao monitoramento, ou mesmo para apontar os desenvolvedores responsáveis pelos alertas. A ideia é pensar em categorias úteis para que depois você encontre os alertas que precisar mais rapidamente!
  • Classification: classificação, que representa o nível de criticidade. Opções: Neutral (neutro), Success (sucesso), Warning (atenção) e Critical (crítico).

    A classificação não tem um significado predefinido. O usuário pode definir a criticidade de cada ação como julgar melhor, seguindo suas regras de negócio.
runtime alerts event overview
Campos da primeira seção

Monitored Operation

Os campos da seção MONITORED OPERATION compreendem as informações centrais do evento a ser monitorado. Aqui, você deve informar o recurso de API e a operação que quer checar e os valores de referência que farão disparar a notificação.

Para manter o monitoramento o mais focado possível, e assim conseguir visualizar os pontos de atenção, os alertas são configurados a nível de operação. Mas lembre-se que você pode criar alertas para todas as operações que necessitar (bem como para quantos recursos de uma API quiser).

Estes são os campos:

  • API Name: campo para inserir o nome da API que se deseja monitorar, com função autocompletar a partir das suas APIs na Plataforma da Sensedia.

  • Environment: ambiente em que a API escolhida está implantada.

  • Resource: recurso da API a ser monitorado.

  • Operation: operação a ser monitorada para o recurso escolhido.

runtime monitored operation
Campos da seção "Monitored Operation"
Quando habilitado, o botão ONLY DEPLOYED REVISIONS mostra apenas os recursos das revisões de APIs implantadas.

Event Details

O único campo da seção EVENT DETAILS visa a escolha do tipo de notificação:

  • Type: tipo de notificação. Opções: Total Calls, Availability, Latency e HTTP Response Status.

Após escolher o tipo, as seções restantes de cadastro serão exibidas.

Period

  • Period / Unit: campos que compõem o período de tempo a ser considerado para a contabilização do valor inserido. Em Period, incluir o número e em Unit a unidade de tempo (opções: minutos e horas).

    Tempo máximo que pode ser configurado: 24 horas (ou 1440 minutos).
  • COMPARE WITH PAST PERIOD: caso este botão seja habilitado, aparecerá um novo campo, Past period, no qual será necessário escolher o intervalo passado com o qual deseja comparar.

Compare with Past Period (comparando com tempo passado)

A seção COMPARE WITH PAST PERIOD permite comparar os valores de referência cadastrados para monitoramento com períodos passados para o disparo de notificação. Nesse caso, os valores inseridos nos campos da seção MONITORED OPERATION não dispararão uma notificação quando atingidos de forma absoluta, mas sim quando atingidos em relação a uma performance passada.

Exemplo

Imagine um alerta de total de chamadas (Total Calls) que envia uma notificação quando há mais de 100 requisições utilizando uma dada operação a um dado recurso por um período de um minuto. Se não habilitarmos a comparação com um período passado, a notificação será enviada sempre que mais de 100 requisições em um minuto forem feitas.

Entretanto, se configurarmos uma comparação com o mesmo período na semana passada, a notificação só será enviada quando foram contabilizadas mais de 100 requisições por minuto em relação ao mesmo período na semana passada.

Isso significa que, se forem contabilizadas 120 requisições em um dado minuto, mas no mesmo período da semana anterior haviam sido contabilizadas 80 requisições por minuto, não haverá disparo de notificação, pois a comparação de requisições revela 40 requisições a mais, menor que o valor de referência configurado (que é de 100 requisições).

compare with

três opções disponíveis de período para comparação, nesta ordem:

  • último <período> <unidade> (se o período configurado for 2 e a unidade referência for minutos, será últimos 2 minutos, se o período for 5 e a unidade for horas, últimas 5 horas);

  • mesmo período no dia anterior; e

  • mesmo período na semana anterior.

Quando habilitada a comparação de performance com um período passado, o campo Unit aparecerá ao lado de Comparison Operator / Quantity para configurar o valor de threshold representando a diferença em quantidade de chamadas ou porcentagem em relação a um período passado, que, se atingido, disparará o alerta.

  • Há duas opções de unidade: Calls (chamadas) ou Percent (porcentagem).

Threshold

  • Comparison Operator: qualifica o valor inserido com uma das opções mais de (more than) ou menos de (less than).

  • Quantity: campo para inserir o valor de quantidade, cuja ultrapassagem (ou não ultrapassagem, vide o operador escolhido no item anterior) disparará o alerta.

    Este campo tem uma variação se o usuário habilitar a comparação com um período passado na configuração do alerta. Então, ele incluirá a escolha de número total de chamadas ou variação percentual como unidade de referência para estabelecer a comparação de performance.
threshold total calls

Etapa Schedule (programando a checagem de estado)

Há duas seções nesta etapa: SCHEDULE e SILENT INTERVAL. A etapa SCHEDULE define a frequência de checagem de estado para geração dos alertas. Ela contém duas opções:

  • Pre-defined (pré-definida). Nesse caso, completar o campo Check every <Period> com a frequência desejada. Opções: 1 minuto; 5, 10 ou 30 minutos; 1 hora; ou todos os dias às 00h.
    schedule pre defined

  • Cron Expression. Nesse caso, uma expressão de agendamento do tipo Cron (ver quadro abaixo) deve ser inserida no campo Expression.
    schedule cron

Uma Cron Expression é uma string que define um agendamento periódico seguindo um formato específico. O campo Cron Expression aceita agendamentos compostos por cinco campos:

<minuto> <hora> <dia do mês> <mês> <dia da semana>

Para completar os campos, podem ser usados números e alguns caracteres especiais:

  • * significa "todos";

  • ? significa "qualquer" e pode ser utilizado em mês e dia de semana;

  • L significa "último" e pode ser utilizado em mês e dia de semana;

  • três letras iniciais de dias de semana em inglês (como MON e TUE);

  • , e - indicam cortes (o primeiro considera só os pontos indicados e o segundo considera todo o intervalo entre eles).

Alguns exemplos:

30 10 ? * *: checagem todos os dias às 10:30 da manhã.
0 14 ? * MON-FRI: checagem de segunda a sexta, às 14:00.
0 14 ? * MON,FRI: checagem às 14:00, somente às segundas e às sextas.
0 8 * JUN ?: checagem às 8:00 da manhã em todos os dias do mês de junho.
10 17 L * ?: checagem às 17:10 no último dia de cada mês.

Silent Interval (silenciando uma notificação temporariamente)

É possível silenciar uma notificação por um tempo pré-determinado ao habilitar a opção SILENT INTERVAL. Isso é útil, por exemplo, quando você sabe que existe um problema de indisponibilidade com sua API e quer desabilitar uma notificação apenas temporariamente (veja aqui sobre como desabilitar alertas permanentemente).

Para configurar o tempo de silêncio, preencha o campo que aparecerá com o intervalo desejado, composto por um número e uma unidade (minutos ou horas).

O tempo máximo que pode ser configurado é de 24 horas (ou 1440 minutos).
silent interval

Se a opção permanecer sempre ligada, o alerta será habilitado depois do intervalo configurado. Então, a próxima notificação que for disparada por um evento será enviada normalmente e acionará um novo período de silêncio.

Um exemplo para esclarecer esse funcionamento:

Imagine que você estabeleça um período de silêncio de 4 horas para um alerta que envia uma notificação quando mais de 20% das requisições a uma dada API retornarem um status HTTP de erro. Durante 4 horas, seu alerta não gerará notificações. Imagine que, passadas 5 horas, o campo SILENT INTERVAL continue habilitado e aconteça de 30% das requisições obterem status de erro. Nesse caso, uma notificação será enviada e essa notificação desencadeará um novo período de silêncio de 4 horas (a partir desta última notificação).

Depois de inserir todos os dados, o botão NEXT será habilitado e levará à próxima etapa.

As etapas restantes do processo de criação (ACTIONS e REVIEW) são as mesmas para todos os tipos de alerta.

Thanks for your feedback!
EDIT
How useful was this article to you?