8 Функције предвиђања

Све функције наведене овде су подржане у:

Функције су наведене без додатних информација. Кликните на функцију да бисте видели све детаље.

Function Description
forecast Будућа вредност, максимална, минимална, делта или просечна вредност ставке.
timeleft Време у секундама потребно да ставка достигне наведени праг.
Заједнички параметри
  •   `/host/key` је заједнички обавезни први параметар за функције
    које се референцирају на историју ставке домаћина
  •   `(sec|#num)<:time shift>` је заједнички други параметар за
    функције које упућују на историју ставке домаћина, где је:
    •  **sec** - максимум [периода
      евалуације](/manual/config/triggers#evaluation_period) у секундама (могу се користити време суфикси) или
    •   **\#num** - максимум [опсег
      евалуације ](/manual/config/triggers#evaluation_period) у најновијем прикупљању вредности (ако им претходи хеш ознака)
    •   **time shift** (опционо) омогућава померање тачке евалуације
      назад у време. Погледајте више детаља за навођење временског померања.

Детаљи функције

Неке опште напомене о параметрима функције:

  • Параметри функције су одвојени зарезом
  • Опциони параметри функције (или делови параметара) су означени са
           `<` `>`
  • Параметри специфични за функцију описани су уз сваку функцију
  • `/host/key` и `(sec|#num)<:time shift>` параметри никада не смеју бити
           под наводницима
forecast(/host/key,(sec|#num)<:time shift>,time,<fit>,<mode>)

Будућа вредност, максимална, минимална, делта или просечна вредност ставке.
Подржани типови вредности: Float, Integer.

Параметри:

  • Погледајте заједничке параметре;
  • time - хоризонт предвиђања у секундама (могу се користити временски суфикси); негативне вредности су подржане;
  • fit (опционо; мора бити под двоструким наводницима) - функција која се користи за уклапање историјских података. Подржано уклапање:
    linear - линеарна функција (подразумевано)
    polynomialN - полином степена N (1 <= N <= 6)
    * exponential* - експоненцијална функција
    logarithmic - логаритамска функција
    power - степена функција
    Имајте на уму да је * polynomial1* еквивалентан linear;
  • mode (опционо; мора бити под двоструким наводницима) - тражени излаз. Подржани режими:
    value - вредност (подразумевано)
    max - максимум
    min - минимум
    delta - max-min
    avg - просечно
    Имајте на уму да value процењује вредност ставке у овом тренутку now + time; max, min, delta и avg истражују процену вредности ставке на интервалу између now и now + time.

Коментари:

  • Ако је вредност за враћање већа од 1.7976931348623158E+308 или мања од -1.7976931348623158E+308, повратна вредност се исече на 1.7976931348623158E+308 или -1.7976931348623158E+308 сходно томе;
  • Постаје неподржано само ако се погрешно користи у изразу (погрешан тип ставке, неважећи параметри), иначе враћа -1 у случају грешке;
  • Погледајте и додатне информације о предиктивним функцијама окидача.

Примери:

forecast(/host/key,#10,1h) #forecast the item value in one hour based on the last 10 values
       forecast(/host/key,1h,30m) #forecast the item value in 30 minutes based on the last hour data
       forecast(/host/key,1h:now-1d,12h) #forecast the item value in 12 hours based on one hour one day ago
       forecast(/host/key,1h,10m,"exponential") #forecast the item value in 10 minutes based on the last hour data and exponential function
       forecast(/host/key,1h,2h,"polynomial3","max") #forecast the maximum value the item can reach in the next two hours based on last hour data and cubic (third degree) polynomial
       forecast(/host/key,#2,-20m) #estimate the item value 20 minutes ago based on the last two values (this can be more precise than using last(), especially if the item is updated rarely, say, once an hour)
timeleft(/host/key,(sec|#num)<:time shift>,threshold,<fit>)

Време у секундама потребно да ставка достигне наведени праг.
Подржани типови вредности: Float, Integer.

Параметри:

Коментари:

  • Ако је вредност за враћање већа од 1.7976931348623158E+308, повратна вредност се исече на 1.7976931348623158E+308;
  • Враћа 1.7976931348623158E+308 ако се праг не може достићи;
  • Постаје неподржано само ако се погрешно користи у изразу (погрешан тип ставке, неважећи параметри), иначе враћа -1 у случају грешке;
  • Погледајте и додатне информације о предиктивним функцијама окидача.

Примери:

timeleft(/host/key,#10,0) #the time until the item value reaches zero based on the last 10 values
       timeleft(/host/key,1h,100) #the time until the item value reaches 100 based on the last hour data
       timeleft(/host/key,1h:now-1d,100) #the time until the item value reaches 100 based on one hour one day ago
       timeleft(/host/key,1h,200,"polynomial2") #the time until the item value reaches 200 based on the last hour data and assumption that the item behaves like a quadratic (second degree) polynomial

Погледајте све подржане функције.