This is a translation of the original English documentation page. Help us make it better.

script.get

Description

integer/array script.get(object parameters)

La méthode permet de récupérer des scripts en fonction des paramètres donnés.

Cette méthode est disponible à tous les types d'utilisateurs. Les autorisations d'appeler la méthode peuvent être révoquées dans les paramètres du le rôle d'utilisateur. Voir Rôles Utilisateur pour plus d'informations.

Paramètres

(objet) Paramètres définissant la sortie souhaitée.

La méthode prend en charge les paramètres suivants.

Paramètre Type Description
groupids string/array Renvoie uniquement les scripts pouvant être exécutés sur les groupes d'hôtes donnés.
hostids string/array Renvoie uniquement les scripts pouvant être exécutés sur les hôtes donnés.
scriptids string/array Renvoie uniquement les scripts avec les ID donnés.
usrgrpids string/array Renvoie uniquement les scripts pouvant être exécutés par les utilisateurs des groupes d'utilisateurs donnés.
selectGroups query Renvoie une propriété groups avec les groupes d'hôtes sur lesquels le script peut être exécuté.
selectHosts query Renvoie une propriété hosts avec les hôtes sur lesquels le script peut être exécuté.
selectActions query Renvoie une propriété actions avec les actions auxquelles le script est associé.
sortfield string/array Trier le résultat selon les propriétés données.

Les valeurs possibles sont : scriptid et name.
countOutput boolean Ces paramètres, communs à toutes les méthodes get, sont décrits dans les commentaires de référence.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valeurs retournées

(integer/array) Retourne soit :

  • un tableau d'objets ;
  • le nombre d'objets récupérés, si le paramètre countOutput a été utilisé.

Exemples

Récupération de tous les scripts

Récupérez tous les scripts configurés.

Requête :

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

Réponse :

{
           "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
       }

Voir également

Source

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