8 Fonctions prédictives

Toutes les fonctions listées ici sont prises en charge dans :

Les fonctions sont listées sans informations supplémentaires. Cliquez sur la fonction pour voir tous les détails.

Function Description
forecast La valeur future, le maximum, le minimum, le delta ou la moyenne de l'élément.
timeleft Le temps en secondes nécessaire pour qu'un élément atteigne le seuil spécifié.
Paramètres communs
  • /host/key est un premier paramètre commun obligatoire pour les fonctions faisant référence à l'historique de l'élément d'hôte
  • (sec|#num)<:time shift> est un deuxième paramètre commun pour les fonctions faisant référence à l'historique de l'élément d'hôte, où :
    • sec - période d'évaluation maximale en secondes (les suffixes de temps peuvent être utilisés), ou
    • #num - plage d'évaluation maximale dans les dernières valeurs collectées (si elle est précédée d'un dièse)
    • time shift (facultatif) permet de déplacer le point d'évaluation dans le temps vers le passé. Voir plus de détails sur la spécification du décalage temporel.

Détails des fonctions

Quelques remarques générales sur les paramètres des fonctions :

  • Les paramètres des fonctions sont séparés par une virgule
  • Les paramètres de fonction facultatifs (ou parties de paramètres) sont indiqués par < >
  • Les paramètres spécifiques à chaque fonction sont décrits avec chaque fonction
  • Les paramètres /host/key et (sec|#num)<:time shift> ne doivent jamais être entre guillemets
forecast(/host/key,(sec|#num)<:time shift>,time,<fit>,<mode>)

La valeur future, maximale, minimale, delta ou moyenne de l’élément.
Types de valeurs pris en charge : Float, Integer.

Paramètres :

  • Voir paramètres communs;
  • time - l’horizon de prévision en secondes (les suffixes temporels peuvent être utilisés) ; les valeurs négatives sont prises en charge ;
  • fit (facultatif ; doit être entre guillemets doubles) - la fonction utilisée pour ajuster les données historiques. Ajustements pris en charge :
    linear - fonction linéaire (par défaut)
    polynomialN - polynôme de degré N (1 <= N <= 6)
    exponential - fonction exponentielle
    logarithmic - fonction logarithmique
    power - fonction puissance
    Notez que polynomial1 est équivalent à linear ;
  • mode (facultatif ; doit être entre guillemets doubles) - la sortie demandée. Modes pris en charge :
    value - valeur (par défaut)
    max - maximum
    min - minimum
    delta - max-min
    avg - moyenne
    Notez que value estime la valeur de l’élément à l’instant now + time ; max, min, delta et avg examinent l’estimation de la valeur de l’élément sur l’intervalle entre now et now + time.

Commentaires :

  • Si la valeur à renvoyer est supérieure à 1.7976931348623158E+308 ou inférieure à -1.7976931348623158E+308, la valeur de retour est ramenée respectivement à 1.7976931348623158E+308 ou -1.7976931348623158E+308 ;
  • Devient non pris en charge uniquement s’il est mal utilisé dans l’expression (mauvais type d’élément, paramètres invalides), sinon renvoie -1 en cas d’erreurs ;
  • Voir également des informations supplémentaires sur les fonctions prédictives de déclencheur.

Exemples :

forecast(/host/key,#10,1h) #prévoit la valeur de l’élément dans une heure sur la base des 10 dernières valeurs
forecast(/host/key,1h,30m) #prévoit la valeur de l’élément dans 30 minutes sur la base des données de la dernière heure
forecast(/host/key,1h:now-1d,12h) #prévoit la valeur de l’élément dans 12 heures sur la base d’une heure de données datant d’il y a un jour
forecast(/host/key,1h,10m,"exponential") #prévoit la valeur de l’élément dans 10 minutes sur la base des données de la dernière heure et d’une fonction exponentielle
forecast(/host/key,1h,2h,"polynomial3","max") #prévoit la valeur maximale que l’élément peut atteindre dans les deux prochaines heures sur la base des données de la dernière heure et d’un polynôme cubique (de troisième degré)
forecast(/host/key,#2,-20m) #estime la valeur de l’élément il y a 20 minutes sur la base des deux dernières valeurs (cela peut être plus précis que l’utilisation de last(), en particulier si l’élément est mis à jour rarement, par exemple une fois par heure)
timeleft(/host/key,(sec|#num)<:time shift>,threshold,<fit>)

Le temps en secondes nécessaire pour qu’un élément de données atteigne le seuil spécifié.
Types de valeurs pris en charge : Float, Integer.

Paramètres :

Commentaires :

  • Si la valeur à renvoyer est supérieure à 1.7976931348623158E+308, la valeur renvoyée est ramenée à 1.7976931348623158E+308 ;
  • Renvoie 1.7976931348623158E+308 si le seuil ne peut pas être atteint ;
  • Devient non pris en charge uniquement en cas d’utilisation incorrecte dans l’expression (type d’élément de données incorrect, paramètres invalides), sinon renvoie -1 en cas d’erreurs ;
  • Voir également les informations supplémentaires sur les fonctions de déclencheur prédictives.

Exemples :

timeleft(/host/key,#10,0) #le temps jusqu’à ce que la valeur de l’élément de données atteigne zéro sur la base des 10 dernières valeurs
timeleft(/host/key,1h,100) #le temps jusqu’à ce que la valeur de l’élément de données atteigne 100 sur la base des données de la dernière heure
timeleft(/host/key,1h:now-1d,100) #le temps jusqu’à ce que la valeur de l’élément de données atteigne 100 sur la base d’une heure de données il y a un jour
timeleft(/host/key,1h,200,"polynomial2") #le temps jusqu’à ce que la valeur de l’élément de données atteigne 200 sur la base des données de la dernière heure et de l’hypothèse que l’élément se comporte comme un polynôme quadratique (du second degré)

Voir toutes les fonctions prises en charge.