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>)

Будућа вредност, max, min, delta или просек ставке.
Подржани типови вредности: 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) #прогнозира вредност ставке за један сат на основу последњих 10 вредности forecast(/host/key,1h,30m) #прогноза вредности ставке за 30 минута на основу података из последњег сата forecast(/host/key,1h:now-1d,12h) #прогноза вредности ставке за 12 сати на основу података из последњег сата пре једног дана forecast(/host/key,1h,10m,"exponential") #прогноза вредности ставке за 10 минута на основу података из последњег сата и експоненцијалне функције forecast(/host/key,1h,2h,"polynomial3","max") #прогноза максималне вредности коју ставка може достићи у наредна два сата на основу података из последњег сата и кубног (трећег степена) полинома forecast(/host/key,#2,-20m) #процена вредности ставке пре 20 минута на основу последње две вредности (ово може бити прецизније него коришћење функције last(), посебно ако се ставка ретко ажурира, рецимо, једном на сат)

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) #време док вредност ставке не достигне нулу на основу последњих 10 вредности timeleft(/host/key,1h,100) #време док вредност ставке не достигне 100 на основу података из последњег сата timeleft(/host/key,1h:now-1d,100) #време док вредност ставке не достигне 100 на основу података из последњег сата timeleft(/host/key,1h,200,"polynomial2") #време док вредност ставке не достигне 200 на основу података из последњег сата и претпоставке да се ставка понаша као квадратни (други степен) полином

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