18 Ставке скрипте
Преглед
Ставке скрипте се могу користити за прикупљање података извршавањем кориснички дефинисаног JavaScript кода са могућношћу преузимања података преко HTTP/HTTPS. Као додатак скрипти, може се навести опциона листа параметара (парови имена и вредности) и временско ограничење.
Овај тип ставке може бити користан у сценаријима прикупљања података који захтевају више корака или сложену логику. Као пример, ставка скрипте може бити конфигурисана да упути HTTP позив, затим на неки начин обради податке примљене у првом кораку и проследи трансформисану вредност другом HTTP позиву. Ставке скрипте обрађују Zabbix сервер или прокси полера.
Конфигурација
У пољу Тип у форми за конфигурацију ставке изаберите Скрипта, а затим попуните обавезна поља.

Сва обавезна поља за унос су означена црвеном звездицом.
Поља која захтевају специфичне информације за ставке Скрипте су:
| Field | Description |
|---|---|
| Key | Унесите јединствени кључ који ће се користити за идентификацију ставке. |
| Parameters | Наведите променљиве које ће се проследити скрипти као парови атрибута и вредности. Подржани су кориснички макрои. Да бисте видели који су уграђени макрои подржани, потражите "Script-type item" у табели подржани макрои. |
| Script | Унесите JavaScript код у модални едитор који се отвара кликом на поље параметра или на икону оловке поред њега. Овај код мора да обезбеди логику за враћање вредности метрике. Код има приступ свим параметрима и свим додатним JavaScript објектима које је додао Zabbix. Погледајте такође: JavaScript водич. |
| Временско ограничење | Временско ограничење за извршавање JavaScript-а (1-600s; прекорачење ће вратити грешку). Имајте на уму да, у зависности од скрипте, може бити потребно дуже време да се активира временски ограничење. За више информација о параметру Временско ограничење, погледајте општи атрибути ставке. |
Примери
Једноставно прикупљање података
Прикупите садржај https://www.example.com/release\ _notes:
- Креирајте ставку са типом "Script".
- У поље Script унесите:
var request = new HttpRequest();
return request.get("https://www.example.com/release_notes");
Прикупљање података са параметрима
Прикупите садржај одређене странице и искористите параметре:
-Креирајте ставку типа "Script" и два параметра:
- url : {$DOMAIN} (требало би да се дефинише кориснички макро {$DOMAIN}, пожељно на нивоу домаћина)
- subpage : /release_notes

- У Script поље, унесите:
var obj = JSON.parse(value);
var url = obj.url;
var subpage = obj.subpage;
var request = new HttpRequest();
return request.get(url + subpage);
Више HTTP захтева
Прикупите садржај и https://www.example.com иhttps://www.example.com/release\_notes:
- Креирајте ставку са типом "Script".
- У пољу Script , унесите:
var request = new HttpRequest();
return request.get("https://www.example.com") + request.get("https://www.example.com/release_notes");
Logging
Додајте унос "Log test" у евиденцију Zabbix сервера и заузврат примите вредност ставке "1":
- Креирајте ставку типа "Скрипта".
- У поље Скрипта унесите:
Zabbix.log(3, 'Log test');
return 1;