datenpunkt.create

Beschreibung

object item.create(object/array items)

Diese Methode ermöglicht es Ihnen, neue Datenpunkte zu erstellen.

Web-Datenpunkte können nicht über die Zabbix API erstellt werden.

Diese Methode ist nur für die Benutzertypen Admin und Super admin verfügbar. Die Berechtigung zum Aufruf der Methode kann in den Einstellungen der Benutzerrolle widerrufen werden. Weitere Informationen finden Sie unter Benutzerrollen.

Parameter

(object/array) Zu erstellende Datenpunkte.

Zusätzlich zu den Standard-Datenpunkt-Eigenschaften akzeptiert die Methode die folgenden Parameter.

Parameter Type Beschreibung
preprocessing array Optionen für die Datenpunkt-Vorverarbeitung.
tags array Datenpunkt-Tags.

Rückgabewerte

(object) Gibt ein Objekt zurück, das die IDs der erstellten Datenpunkte in der Eigenschaft itemids enthält. Die Reihenfolge der zurückgegebenen IDs entspricht der Reihenfolge der übergebenen Datenpunkte.

Beispiele

Erstellen eines Datenpunkts

Erstellen Sie einen numerischen Zabbix-Agent-Datenpunkt mit 2 Datenpunkt-Tags, um den freien Festplattenspeicher auf dem Host mit der ID „30074“ zu überwachen.

Anfrage:

{
    "jsonrpc": "2.0",
    "method": "item.create",
    "params": {
        "name": "Free disk space on /home/joe/",
        "key_": "vfs.fs.size[/home/joe/,free]",
        "hostid": "30074",
        "type": 0,
        "value_type": 3,
        "interfaceid": "30084",
        "tags": [
            {
                "tag": "component",
                "value": "storage"
            },
            {
                "tag": "equipment",
                "value": "workstation"
            }
        ],
        "delay": "30s"
    },
    "id": 1
}

Antwort:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "24758"
        ]
    },
    "id": 1
}

Erstellen eines Host-Inventar-Datenpunkts

Erstellen Sie einen Zabbix-Agent-Datenpunkt, um das Inventarfeld „OS“ des Hosts zu befüllen.

Anfrage:

{
    "jsonrpc": "2.0",
    "method": "item.create",
    "params": {
        "name": "uname",
        "key_": "system.uname",
        "hostid": "30021",
        "type": 0,
        "interfaceid": "30007",
        "value_type": 1,
        "delay": "10s",
        "inventory_link": 5
    },
    "id": 1
}

Antwort:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "24759"
        ]
    },
    "id": 1
}

Erstellen eines Datenpunkts mit Vorverarbeitung

Erstellen Sie einen Datenpunkt mit benutzerdefiniertem Multiplikator.

Anfrage:

{
    "jsonrpc": "2.0",
    "method": "item.create",
    "params": {
        "name": "Device uptime",
        "key_": "sysUpTime",
        "hostid": "10084",
        "type": 20,
        "snmp_oid": "SNMPv2-MIB::sysUpTime.0",
        "value_type": 1,
        "delay": "60s",
        "interfaceid": "83",
        "preprocessing": [
            {
                "type": 1,
                "params": "0.01",
                "error_handler": 1,
                "error_handler_params": ""
            }
        ]
    },
    "id": 1
}

Antwort:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "44210"
        ]
    },
    "id": 1
}

Erstellen eines abhängigen Datenpunkts

Erstellen Sie einen abhängigen Datenpunkt für den Master-Datenpunkt mit der ID 24759. Es sind nur Abhängigkeiten auf demselben Host zulässig, daher sollten der Master-Datenpunkt und der abhängige Datenpunkt dieselbe hostid haben.

Anfrage:

{
    "jsonrpc": "2.0",
    "method": "item.create",
    "params": {
      "hostid": "30074",
      "name": "Dependent test item",
      "key_": "dependent.item",
      "type": 18,
      "master_itemid": "24759",
      "value_type": 2
    },
    "id": 1
}

Antwort:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "44211"
        ]
    },
    "id": 1
}

HTTP-Agent-Datenpunkt erstellen

Erstellen Sie einen Datenpunkt mit der Anfragemethode POST und Vorverarbeitung der JSON-Antwort.

Anfrage:

{
    "jsonrpc": "2.0",
    "method": "item.create",
    "params": {
        "url":"http://127.0.0.1/http.php",
        "query_fields": [
            {
                "name": "mode",
                "value": "json"
            },
            {
                "name": "min",
                "value": "10"
            },
            {
                "name": "max",
                "value": "100"
            }
        ],
        "interfaceid": "1",
        "type": 19,
        "hostid": "10254",
        "delay": "5s",
        "key_": "json",
        "name": "HTTP agent example JSON",
        "value_type": 0,
        "output_format": 1,
        "preprocessing": [
            {
                "type": 12,
                "params": "$.random",
                "error_handler": 0,
                "error_handler_params": ""
            }
        ]
    },
    "id": 1
}

Antwort:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "23865"
        ]
    },
    "id": 1
}

Skript-Datenpunkt erstellen

Erstellen Sie eine einfache Datenerfassung mit einem Skript-Datenpunkt.

Anfrage:

{
    "jsonrpc": "2.0",
    "method": "item.create",
    "params": {
        "name": "Skriptbeispiel",
        "key_": "custom.script.item",
        "hostid": "12345",
        "type": 21,
        "value_type": 4,
        "params": "var request = new HttpRequest();\nreturn request.post(\"https://postman-echo.com/post\", JSON.parse(value));",
        "parameters": [
            {
                "name": "host",
                "value": "{HOST.CONN}"
            }
        ],
        "timeout": "6s",
        "delay": "30s"
    },
    "id": 1
}

Antwort:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "23865"
        ]
    },
    "id": 1
}

Quelle

CItem::create() in ui/include/classes/api/services/CItem.php.