object task.create(object/array tasks)
Cette méthode permet de créer une nouvelle tâche (comme collecter des données de diagnostic ou vérifier des éléments ou des règles de découverte de bas niveau sans recharger la configuration).
Cette méthode est seulement disponible pour les utilisateurs du type Super admin. Les autorisations d'appeler la méthode peuvent être révoquées dans les paramètres de rôle d'utilisateur. Voir Rôles utilisateur pour plus d'informations.
(object/array)
Une tâche à créer.
La méthode accepte les paramètres suivants.
Paramètre | Type | Description |
---|---|---|
type (obligatoire) |
integer | Type de tâche. Valeurs possibles : 1 - Informations de diagnostic ; 6 - Vérifier maintenant. |
request (obligatoire) |
object | Objet de demande de tâche selon le type de tâche. Le format correct de l'objet de requête est décrit dans la section Objet de tâche. |
proxy_hostid | integer | Proxy pour lequel la tâche d'informations de diagnostic collectera des données. Ignoré pour les tâches 'Vérifier maintenant'. |
Notez que les tâches 'Vérifier maintenant' ne peuvent être créées que pour les types d'objets/règles de découverte suivants :
If item or discovery ruls is of type Dependent item, then top level master item must be of type: - Zabbix agent - SNMPv1/v2/v3 agent - Simple check - Internal check - External check - Database monitor - HTTP agent - IPMI agent - SSH agent - TELNET agent - Calculated check - JMX agent
(object)
Retourne un objet contenant les identifiants des tâches créés sous la propriété taskids
. L'ordre des ID retournés correspond à l'ordre des tâches transmises.
Créez une tâche "vérifier maintenant" pour deux éléments. L'un est un élément, l'autre est une règle de découverte de bas niveau.
Requête :
{
"jsonrpc": "2.0",
"method": "task.create",
"params": [
{
"type": 6,
"request": {
"itemid": "10092"
}
},
{
"type": "6",
"request": {
"itemid": "10093"
}
}
],
"auth": "700ca65537074ec963db7efabda78259",
"id": 1
}
Réponse :
Créez une tâche "informations de diagnostic".
Requête :
{
"jsonrpc": "2.0",
"method": "task.create",
"params": [
{
"type": 1,
"request": {
"alerting": {
"stats": [
"alerts"
],
"top": {
"media.alerts": 10
}
},
"lld": {
"stats": "extend",
"top": {
"values": 5
}
}
},
"proxy_hostid": 0
}
],
"auth": "700ca65537074ec963db7efabda78259",
"id": 2
}
Réponse :
CTask::create() dans ui/include/classes/api/services/CTask.php.