Ставке скрипте се могу користити за прикупљање података извршавањем кориснички дефинисаног 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" и два параметра: - url : {$DOMAIN} (требало би да се дефинише кориснички макро {$DOMAIN}, пожељно на нивоу домаћина) - subpage : /release_notes
var obj = JSON.parse(value);
var url = obj.url;
var subpage = obj.subpage;
var request = new HttpRequest();
return request.get(url + subpage);
Прикупите садржај и https://www.example.com иhttps://www.example.com/release_notes:
var request = new HttpRequest();
return request.get("https://www.example.com") + request.get("https://www.example.com/release_notes");
Додајте унос "Log test" у евиденцију Zabbix сервера и заузврат примите вредност ставке "1":