Esta é uma tradução da página de documentação original em inglês. Ajude-nos a torná-la melhor.

2 Intervalos personalizados

Visão geral

É possível criar regras de personalização que afetem quando um item será coletado. São duas as formas, a primeira é conhecida como Intervalos Flexíveis e permite redefinir o intervalo entre coletas. A segunda forma é o Agendamento, nesta forma de coleta é possível especificar exatamente quando ocorrerão as coletas, não apenas o intervalo entre elas.

Intervalos flexíveis

Os intervalos flexíveis permitem redefinir o intervalo entre coletas em períodos específicos. Para definir a personalização é preciso informar dois valores:

  • Período – O período (dia e hora) em que o intervalo flexível estará ativo (mais detalhes em períodos de tempo)
  • Intervalo – o intervalo entre coletas que deverá ser considerado em um determinado período

Podem ser definidos até sete intervalos flexíveis por item. Se os períodos dos intervalos flexíveis se sobrepuser, será considerado o menor intervalo entre coletas. Observe que se o intervalo flexível for igual a '0', a monitoração não ocorrerá. Fora dos períodos definidos nos intervalos flexíveis, o intervalo padrão será adotado.

Observe que se o intervalo entre coletas for exatamente igual ao tamanho do período em que ele é válido, a coleta ocorrerá somente uma vez. Se o intervalo entre coletas for maior do que o período de validade da personalização, a coleta poderá não ocorrer. Se o intervalo entre coletas for menor do que o período de validade do intervalo flexível, a coleta poderá ocorrer mais de uma vez.

Se o intervalo flexível for configurado para o valor '0' o item não será monitorado durante o período flexível, retornando a ser coletado quando o período flexível estiver inativo.

Exemplos:

Intervalo Período Descrição
10 1-5,09:00-18:00 O item será verificado a cada 10 segundos durante a período flexível.
0 1-7,00:00-7:00 O item não será verificado durante a madrugada.
60 1-7,12:00-12:01 O item será verificado as 12:00 todo dia. Observe que este era uma solução alternativa enquanto não tínhamos o agendamento de coletas. A partir do Zabbix 3.0 não é recomendável utilizar-se do recurso de intervalo flexível para a coleta em horário agendado, para isso use o Agendamento.

Agendamento de coletas

O recurso de agendamento de coletas é utilizado para garantir a coleta de um item em um momento específico. Enquanto o intervalo flexível é utilizado para redefinir o intervalo entre coletas, o agendamento é utilizado para especificar uma coleta em um momento específico, de forma independente do período padrão. As coletas serão executadas em paralelo.

Um agendamento é definido como: md<filtro>wd<filtro>h<filtro>m<filtro>s<filtro> onde:

  • md - dia do mês
  • wd - dia da semana
  • h - hora
  • m - minuto
  • s – segundo
* 

<filtro> é usado para definir o valor para o prefixo (dias, horas, minutos, segundos) e é definido como: [<de>[-<até>]][/<salto>][,<filter>] onde:

  • <de> e <ate> definem o range de valores possíveis (incluindo eles próprios). Se <até> for omitido o filtro irá considerar que o range é <de> - <de>. Se o <de> também for omitido o filtro irá considerar que o range engloba todos os valores possíveis.
  • <salto> define o valor a saltar dentro do range. Por padrão o <salto> é igual a 1, isso significa que todos os valores possíveis no range serão aceitos.

As definições de filtro são opcionais, entretanto, cada filtro selecionado deverá ter um range ou um <salto> definido.

Lista de valores válidos para <de> e <até> para cada tipo de filtro:

Prefixo Descrição <de> <até>
md Dias do mês 1-31 1-31
wd Dias da semana 1-7 1-7
h Horas 0-23 0-23
m Minutos 0-59 0-59
s Segundos 0-59 0-59

O valor <de> deverá ser menor ou igual ao valor definido em <até>. O valor do <salto> deverá ser maior ou igual a 1 e menor ou igual ao menor valor dos campos <de> - <até>.

O primeiro campo de um filtro, tendo apenas um dígito, poderá receber o prefixo '0'. Por exemplo md01-31 e h/02 são intervalos válidos, mas md01-031 e wd01-07 não são válidos.

Múltiplos agendamentos podem ser utilizados ao se separar pelo caracter ;. Se If a time is matched by several intervals it is executed only once. For example, wd1h9;h9 will be executed only once on Monday at 9am.

Examples:

Intervalo Descrição
m0-59 Coleta a cada minuto
h9-17/2 Coleta a cada 2 horas, começando as 9 e terminando as 17 (9:00, 11:00 ...)
m0,30 or m/30 Coleta em todo o minuto 30 de cada hora
m0,5,10,15,20,25,30,35,40,45,50,55 ou m/5 Coleta a cada cinco minutos
wd1-5h9 Coleta de segunda a sexta, as 9:00
wd1-5h9-18 Coleta de segunda a sexta, de nove as 18, uma vez por hora (9:00,10:00,...,18:00)
h9,10,11 or h9-11 Coleta todo dia as 9:00, 10:00 e 11:00
md1h9m30 Coleta no primeiro dia de cada mês as 09:30
md1wd1h9m30 Coleta no primeiro dia de cada mês, mas só se o dia for também uma segunda feira
h9m/30 ou h9m0-59/30 Coleta as 09:00 e as 09:30
h9,10m/30 Coleta as 9:00, 9:30, 10:00, 10:30
h9-10m30 Coleta as 9:30, 10:30
h9m10-40/30 Coleta as 9:10, 9:40
h9,10m10-40/30 Coleta as 9:10, 9:40, 10:10, 10:40
h9m10-40 ou h9m10-40/1 Coleta as 9:10, 9:11, 9:12, ... 9:40
h9-12,15 Coleta as 9:00, 10:00, 11:00, 12:00, 15:00
h9-12,15m0 ou h9-12,15m0s0 execute at 9:00, 10:00, 11:00, 12:00, 15:00
h9-12s30 Coleta as 9:00:30, 10:00:30, 11:00:30, 12:00:30
h9m/30;h10 Coleta as 9:00, 9:30, 10:00

Custom intervals correlation

Keep in mind that when configuring custom intervals the value of Update interval is taken into account. The following table shows correlation between custom intervals and Update interval.

Update interval Flexible Scheduling Result
0 Error
0 non-zero Flexible
0 non-zero Scheduling
non-zero Update interval
non-zero non-zero Flexible
non-zero non-zero Update interval and Scheduling