8 Funções preditivas
Todas as funções listadas aqui são suportadas em:
As funções são listadas sem informações adicionais. Clique na função para ver os detalhes completos.
| Função | Descrição |
|---|---|
| forecast | O valor futuro, máximo, mínimo, delta ou média do item. |
| timeleft | O tempo em segundos necessário para que um item atinja o limite especificado. |
Parâmetros comuns
/host/keyé um parâmetro obrigatório comum para as funções que referenciam o histórico do item do host(sec|#num)<:deslocamento de tempo>é um parâmetro comum para as funções que referenciam o histórico do item do host, onde:- sec - período de avaliação máximo em segundos (sufixos de tempo podem ser usados), ou
- #num - intervalo de avaliação máximo nos últimos valores coletados (se precedido por uma cerquilha)
- deslocamento de tempo (opcional) permite mover o ponto de avaliação para trás no tempo. Veja mais detalhes sobre como especificar o deslocamento de tempo.
Detalhes da função
Algumas observações gerais sobre os parâmetros da função:
- Os parâmetros da função são separados por vírgula
- Parâmetros opcionais da função (ou partes do parâmetro) são indicados por
<> - Parâmetros específicos da função são descritos com cada função
- Os parâmetros
/host/keye(sec|#num)<:time shift>nunca devem ser colocados entre aspas
forecast(/host/key,(sec|#num)<:time shift>,time,<fit>,<mode>)
O valor futuro, máximo, mínimo, delta ou média do item.
Tipos de valor suportados: Float, Integer.
Parâmetros:
- Veja parâmetros comuns;
- time - o horizonte de previsão em segundos (sufixos de tempo podem ser usados); valores negativos são suportados;
- fit (opcional; deve ser entre aspas duplas) - a função usada para ajustar os dados históricos. Ajustes suportados:
linear - função linear (padrão)
polynomialN - polinomial de grau N (1 <= N <= 6)
exponential - função exponencial
logarithmic - função logarítmica
power - função de potência
Observe que polynomial1 é equivalente a linear; - mode (opcional; deve ser entre aspas duplas) - a saída desejada. Modos suportados:
value - valor (padrão)
max - máximo
min - mínimo
delta - max-min
avg - média
Observe que value estima o valor do item no momentonow+time; max, min, delta e avg investigam a estimativa do valor do item no intervalo entrenowenow+time.
Comentários:
- Se o valor a ser retornado for maior que 1.7976931348623158E+308 ou menor que -1.7976931348623158E+308, o valor de retorno é limitado a 1.7976931348623158E+308 ou -1.7976931348623158E+308, respectivamente;
- Torna-se não suportado apenas se usado incorretamente na expressão (tipo de item errado, parâmetros inválidos), caso contrário retorna -1 em caso de erros;
- Veja também informações adicionais sobre funções de trigger preditivas.
Exemplos:
forecast(/host/key,#10,1h) #prevê o valor do item em uma hora com base nos últimos 10 valores
forecast(/host/key,1h,30m) #prevê o valor do item em 30 minutos com base nos dados da última hora
forecast(/host/key,1h:now-1d,12h) #prevê o valor do item em 12 horas com base em uma hora de dados de um dia atrás
forecast(/host/key,1h,10m,"exponential") #prevê o valor do item em 10 minutos com base nos dados da última hora e função exponencial
forecast(/host/key,1h,2h,"polynomial3","max") #prevê o valor máximo que o item pode atingir nas próximas duas horas com base nos dados da última hora e polinomial cúbica (terceiro grau)
forecast(/host/key,#2,-20m) #estima o valor do item 20 minutos atrás com base nos dois últimos valores (isso pode ser mais preciso do que usar last(), especialmente se o item for atualizado raramente, por exemplo, uma vez por hora)
timeleft(/host/key,(sec|#num)<:time shift>,threshold,<fit>)
O tempo em segundos necessário para que um item atinja o limite especificado.
Tipos de valores suportados: Float, Integer.
Parâmetros:
- Veja parâmetros comuns;
- threshold - o valor a ser atingido (sufixos de unidade podem ser usados);
- fit (opcional; deve ser colocado entre aspas duplas) - veja forecast().
Comentários:
- Se o valor a ser retornado for maior que 1.7976931348623158E+308, o valor de retorno é limitado a 1.7976931348623158E+308;
- Retorna 1.7976931348623158E+308 se o limite não puder ser atingido;
- Torna-se não suportado apenas se for usado incorretamente na expressão (tipo de item errado, parâmetros inválidos), caso contrário retorna -1 em caso de erros;
- Veja também informações adicionais sobre funções de trigger preditivas.
Exemplos:
timeleft(/host/key,#10,0) #o tempo até que o valor do item atinja zero com base nos últimos 10 valores
timeleft(/host/key,1h,100) #o tempo até que o valor do item atinja 100 com base nos dados da última hora
timeleft(/host/key,1h:now-1d,100) #o tempo até que o valor do item atinja 100 com base em uma hora de um dia atrás
timeleft(/host/key,1h,200,"polynomial2") #o tempo até que o valor do item atinja 200 com base nos dados da última hora e assumindo que o item se comporta como um polinômio quadrático (de segundo grau)