#8 Voorspellingsfuncties

Alle hier vermelde functies worden ondersteund in:

Enkele algemene opmerkingen over functieparameters:

  • Functieparameters worden gescheiden door een komma
  • Optionele functieparameters (of parameterdelen) worden aangegeven met: < >
  • Functiespecifieke parameters worden bij elke functie beschreven
  • /host/key en (sec|#num)<:time shift> parameters mogen nooit . zijn geciteerd
Algemene parameters
  • /host/key is een algemene verplichte eerste parameter voor de functies verwijzend naar de geschiedenis van het hostitem
  • (sec|#num)<:time shift> is een gebruikelijke tweede parameter voor de functies die verwijzen naar de geschiedenis van het hostitem, waarbij:
    • sec - maximum evaluatie periode in seconden (tijd achtervoegsels kan worden gebruikt), of
    • #num - maximum evaluatie bereik in de laatste verzamelde waarden (indien voorafgegaan door een hekje)
    • tijdverschuiving (optioneel) maakt het mogelijk om het evaluatiepunt te verplaatsen terug in de tijd. Bekijk meer details](/manual/config/triggers/expression#time_shift) aan tijdverschuiving aangeven.

Voorspellingsfuncties

FUNCTIE
Beschrijving Functiespecifieke parameters Opmerkingen
voorspelling (/host/key,(sec|#num)<:time shift>,time,<fit>,<mode>)
Toekomstige waarde, max, min, delta of gemiddelde van het item. Zie algemene parameters.

tijd - prognosehorizon in seconden (tijdsuffixen kunnen worden gebruikt ); negatieve waarden worden ondersteund

fit (optioneel; moet dubbele aanhalingstekens zijn) - functie die wordt gebruikt om historische gegevens te passen

Ondersteunde 'fits':
linear - lineair functie
polynoomN - polynoom van graad N (1 <= N <= 6)
exponentiële - exponentiële functie
logaritmische - logaritmische functie
macht - machtsfunctie<br >
Let op:
linear is standaard, polynomial1 is gelijk aan lineair

mode (optioneel; moet dubbele aanhalingstekens zijn) - gevraagde uitvoer<br >
Ondersteunde modes:
value - waarde (standaard)
max - maximum
min - minimum
delta - max-min
avg - gemiddelde

Let op:
value schat de itemwaarde op het moment nu + tijd
max, min, delta en avg de schatting van de itemwaarde onderzoeken op het interval tussen 'nu' en 'nu' + 'tijd'
Ondersteunde waardetypen: float, int

Als de te retourneren waarde groter is dan 1.7976931348623157E+308 of minder dan -1.7976931348623157E+308, retourwaarde wordt bijgesneden tot 1.79769313486231 57E+308 of -1.7976931348623157E+308 dienovereenkomstig.

Wordt alleen niet ondersteund bij misbruik in expressie (verkeerd itemtype, ongeldige parameters), anders wordt -1 geretourneerd in geval van fouten.

Voorbeelden:
=> voorspelling(/host/key,#10,1u) → voorspelling itemwaarde in één uur op basis van de laatste 10 waarden
=> ** forecast(/host/key,1u,30m) → voorspelling itemwaarde in 30 minuten op basis van gegevens van het afgelopen uur
=>
forecast(/host/key, 1u:nu-1d,12u) → verwachte itemwaarde in 12 uur op basis van één uur een dag geleden
=>
prognose(/host/key,1u* *,10m,"exponentieel") → voorspelling itemwaarde in 10 minuten op basis van de gegevens van het afgelopen uur en exponentiële functie
=> voorspelling(/host/key,1u, 2u,"polynomial3","max") → voorspel de maximale waarde die het item in de komende twee uur kan bereiken op basis van gegevens van het afgelopen uur en kubieke (derdegraads) polynoom
=> voorspelling (/host/key,#2,-20m) → schat de waarde van het item 20 minuten geleden op basis van de laatste twee waarden (t dit kan nauwkeuriger zijn dan het gebruik van last(), vooral als het item zelden wordt bijgewerkt, bijvoorbeeld een keer per uur)

Zie ook aanvullende informatie over predictive trigger-functies .
timeleft (/host/key,(sec|#num)<:time shift>,threshold,<fit>)
Tijd in seconden die nodig is voor een item om een opgegeven drempel te bereiken. Zie algemene parameters.

drempel - te bereiken waarde (eenheidsachtervoegsels /appendix/suffixes) kan worden gebruikt)

fit (optioneel; moet dubbele aanhalingstekens zijn) - zie forecast()
Ondersteunde waardetypen: float, int

If value te retourneren is groter dan 1.7976931348623157E+308, retourwaarde wordt bijgesneden tot 1.7976931348623157E+308.

Retourneert 1.7976931348623157E+308 als de drempel niet kan worden bereikt.

Wordt alleen niet ondersteund als het wordt misbruikt in de expressie (verkeerd itemtype, ongeldige parameters), geeft anders -1 terug in geval van fouten.

Voorbeelden:
=> timeleft(/host/key,#10 ,0) → tijd totdat de itemwaarde nul bereikt op basis van de laatste 10 waarden
=> timeleft(/host/key,1h,100) → tijd totdat de itemwaarde 100 bereikt op basis van de gegevens van het afgelopen uur
=> timeleft(/host/key,1h:now-1d,100) → tijd tot het item waarde bereikt 100 op basis van één uur per dag a go
=> timeleft(/host/key,1h,200,"polynomial2") → tijd totdat de itemwaarde 200 bereikt op basis van de gegevens van het afgelopen uur en aanname dat het item gedraagt zich als een kwadratische (tweedegraads) polynoom
Zie ook aanvullende informatie over predictive trigger-functies.