script.get

Opis

integer/array script.get(object parameters)

Metoda umożliwia pobranie skryptów zgodnie z podanymi parametrami.

Ta metoda jest dostępna dla użytkowników dowolnego typu. Uprawnienia do jej wywołania mogą zostać cofnięte w ustawieniach ról użytkownika. Zobacz Role użytkowników , aby uzyskać więcej informacji.

Parametry

(object) Parametry definiujące żądany wynik.

Metoda obsługuje następujące parametry.

Parametr Typ Opis
groupids string/array Zwróć tylko skrypty, które można uruchomić na podanych grupach hostów.
hostids string/array Zwróć tylko skrypty, które można uruchomić na podanych hostach.
scriptids string/array Zwróć tylko skrypty o podanych identyfikatorach.
usrgrpids string/array Zwróć tylko skrypty, które mogą być uruchamiane przez użytkowników w podanych grupach użytkowników.
selectGroups query Zwróć właściwość groups z grupami hostów, na których można uruchomić skrypt.
selectHosts query Zwróć właściwość hosts z hostami, na których można uruchomić skrypt.
selectActions query Zwróć właściwość actions z akcjami, z którymi skrypt jest powiązany.
sortfield string/array Posortuj wyniki według podanych właściwości.

Możliwe wartości to: scriptid i name.
countOutput boolean Te parametry, będące wspólne dla wszystkich metod get, są szczegółowo opisane na stronie komentarza referencyjnego.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Zwracane wartości

(integer/array) Zwraca jedną z opcji:

  • tablicę obiektów;
  • liczbę pobranych obiektów, jeśli parametr countOutput został wykorzystany.

Przykłady

Pobierz wszystkie skrypty

Pobierz wszystkie skonfigurowane skrypty.

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "script.get",
           "params": {
               "output": "extend"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [    
               {
                   "scriptid": "1",
                   "name": "Ping",
                   "command": "/bin/ping -c 3 {HOST.CONN} 2>&1",
                   "host_access": "2",
                   "usrgrpid": "0",
                   "groupid": "0",
                   "description": "",
                   "confirmation": "",
                   "type": "0",
                   "execute_on": "1",
                   "timeout": "30s",
                   "parameters": []
               },
               {
                   "scriptid": "2",
                   "name": "Traceroute",
                   "command": "/usr/bin/traceroute {HOST.CONN} 2>&1",
                   "host_access": "2",
                   "usrgrpid": "0",
                   "groupid": "0",
                   "description": "",
                   "confirmation": "",
                   "type": "0",
                   "execute_on": "1",
                   "timeout": "30s",
                   "parameters": []
               },
               {
                   "scriptid": "3",
                   "name": "Detect operating system",
                   "command": "sudo /usr/bin/nmap -O {HOST.CONN} 2>&1",
                   "host_access": "2",
                   "usrgrpid": "7",
                   "groupid": "0",
                   "description": "",
                   "confirmation": "",
                   "type": "0",
                   "execute_on": "1",
                   "timeout": "30s",
                   "parameters": []
               },
               {
                   "scriptid": "4",
                   "name": "Webhook",
                   "command": "try {\n var request = new HttpRequest(),\n response,\n data;\n\n request.addHeader('Content-Type: application/json');\n\n response = request.post('https://localhost/post', value);\n\n try {\n response = JSON.parse(response);\n }\n catch (error) {\n response = null;\n }\n\n if (request.getStatus() !== 200 || !('data' in response)) {\n throw 'Unexpected response.';\n }\n\n data = JSON.stringify(response.data);\n\n Zabbix.Log(3, '[Webhook Script] response data: ' + data);\n\n return data;\n}\ncatch (error) {\n Zabbix.Log(3, '[Webhook Script] script execution failed: ' + error);\n throw 'Execution failed: ' + error + '.';\n}",
                   "host_access": "2",
                   "usrgrpid": "7",
                   "groupid": "0",
                   "description": "",
                   "confirmation": "",
                   "type": "5",
                   "execute_on": "1",
                   "timeout": "30s",
                   "parameters": [
                       {
                           "name": "token",
                           "value": "{$WEBHOOK.TOKEN}"
                       },
                       {
                           "name": "host",
                           "value": "{HOST.HOST}"
                       },
                       {
                           "name": "v",
                           "value": "2.2"
                       }
                   ]
               }
           ],
           "id": 1
       }

Zobacz także

Źródło

CScript::get() w ui/include/classes/api/services/CScript.php.