configuration.import

Beschreibung

boolean configuration.import(object parameters)

Diese Methode ermöglicht es, Konfigurationsdaten aus einer serialisierten Zeichenfolge zu importieren.

Diese Methode ist für Benutzer aller Typen verfügbar. Berechtigungen zum Aufrufen der Methode können in den Einstellungen der Benutzerrolle widerrufen werden. Weitere Informationen finden Sie unter Benutzerrollen.

Parameter

(object) Parameter, die die zu importierenden Daten und die Regeln enthalten, wie die Daten verarbeitet werden sollen.

Parameter Type Beschreibung
format string Format der serialisierten Zeichenfolge.

Mögliche Werte:
yaml - YAML;
xml - XML;
json - JSON.

Parameterverhalten:
- erforderlich
source string Serialisierte Zeichenfolge, die die Konfigurationsdaten enthält.

Parameterverhalten:
- erforderlich
rules object Regeln dafür, wie neue und vorhandene Objekte importiert werden sollen.

Benutzer vom Typ Admin dürfen nur diejenigen Objekte importieren, für die sie über die Berechtigung read-write permission verfügen, sowie Karten. Beispielsweise können ein Host und seine Entitäten (Datenpunkte, Auslöser, Diagramme usw.) nur importiert werden, wenn die Benutzergruppe des Benutzers über Berechtigungen für die Hostgruppe verfügt, zu der der importierte Host gehören wird. Bilder und Medientypen können von Benutzern vom Typ Admin nicht importiert werden.

Der Parameter rules wird in der folgenden Tabelle ausführlich beschrieben.

Parameterverhalten:
- erforderlich
returnMissingObjects boolean Regeln, ob das Antwortobjekt Informationen über fehlende Objekte enthalten soll; Standard: false.

Wenn keine Regeln angegeben werden, wird die Konfiguration nicht aktualisiert.

Das Objekt rules unterstützt die folgenden Parameter.

Parameter Type Beschreibung
dashboards object Regeln für den Import von Dashboards.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Dashboards erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt und ein bestimmtes importierbares Dashboard im System vorhanden ist, wird es vollständig aktualisiert. Seiten und Widgets werden vollständig durch die neuen ersetzt; Standard: false.
discoveryRules object Regeln für den Import von LLD-Regeln.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue LLD-Regeln erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene LLD-Regeln aktualisiert; Standard: false;
deleteMissing - (boolean) wenn auf true gesetzt, werden LLD-Regeln, die in den importierten Daten nicht vorhanden sind, aus der Datenbank gelöscht; Standard: false.
global_regexes object Regeln für den Import globaler regulärer Ausdrücke.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue globale reguläre Ausdrücke erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene globale reguläre Ausdrücke aktualisiert, wobei ihre Unterausdrücke vollständig überschrieben werden; Standard: false.
graphs object Regeln für den Import von Diagrammen.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Diagramme erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Diagramme aktualisiert; Standard: false;
deleteMissing - (boolean) wenn auf true gesetzt, werden Diagramme, die in den importierten Daten nicht vorhanden sind, aus der Datenbank gelöscht; Standard: false.
host_groups object Regeln für den Import von Hostgruppen.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Hostgruppen erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Hostgruppen aktualisiert; Standard: false.
hosts object Regeln für den Import von Hosts.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Hosts erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Hosts aktualisiert; Standard: false.
httptests object Regeln für den Import von Web-Szenarien.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Web-Szenarien erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Web-Szenarien aktualisiert; Standard: false;
deleteMissing - (boolean) wenn auf true gesetzt, werden Web-Szenarien, die in den importierten Daten nicht vorhanden sind, aus der Datenbank gelöscht; Standard: false.
images object Regeln für den Import von Bildern.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Bilder erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Bilder aktualisiert; Standard: false.
items object Regeln für den Import von Datenpunkten.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Datenpunkte erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Datenpunkte aktualisiert; Standard: false;
deleteMissing - (boolean) wenn auf true gesetzt, werden Datenpunkte, die in den importierten Daten nicht vorhanden sind, aus der Datenbank gelöscht; Standard: false.
maps object Regeln für den Import von Karten.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Karten erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Karten aktualisiert; Standard: false.
mediaTypes object Regeln für den Import von Medientypen.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Medientypen erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Medientypen aktualisiert; Standard: false.
templateDashboards object Regeln für den Import von Vorlagen-Dashboards.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Vorlagen-Dashboards erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Vorlagen-Dashboards aktualisiert; Standard: false;
deleteMissing - (boolean) wenn auf true gesetzt, werden Vorlagen-Dashboards, die in den importierten Daten nicht vorhanden sind, aus der Datenbank gelöscht; Standard: false.
template_groups object Regeln für den Import von Vorlagengruppen.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Vorlagengruppen erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Vorlagengruppen aktualisiert; Standard: false.
templateLinkage object Regeln für den Import von Vorlagenverknüpfungen.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden Vorlagen, die nicht mit dem zu importierenden Host oder der zu importierenden Vorlage verknüpft sind, aber in den importierten Daten vorhanden sind, verknüpft; Standard: false;
deleteMissing - (boolean) wenn auf true gesetzt, werden Vorlagen, die mit dem zu importierenden Host oder der zu importierenden Vorlage verknüpft sind, aber in den importierten Daten nicht vorhanden sind, ohne Entfernen der von den getrennten Vorlagen geerbten Entitäten (Datenpunkte, Auslöser usw.) getrennt; Standard: false.
templates object Regeln für den Import von Vorlagen.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Vorlagen erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Vorlagen aktualisiert; Standard: false.
triggers object Regeln für den Import von Auslösern.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Auslöser erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Auslöser aktualisiert; Standard: false;
deleteMissing - (boolean) wenn auf true gesetzt, werden Auslöser, die in den importierten Daten nicht vorhanden sind, aus der Datenbank gelöscht; Standard: false.
valueMaps object Regeln für den Import von Host- oder Vorlagen-Wertzuordnungen.

Unterstützte Parameter:
createMissing - (boolean) wenn auf true gesetzt, werden neue Wertzuordnungen erstellt; Standard: false;
updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Wertzuordnungen aktualisiert; Standard: false;
deleteMissing - (boolean) wenn auf true gesetzt, werden Wertzuordnungen, die in den importierten Daten nicht vorhanden sind, aus der Datenbank gelöscht; Standard: false.

Rückgabewerte

(boolean) gibt true zurück, wenn der Importvorgang erfolgreich war.

Beispiele

Importieren einer Vorlage

Importieren Sie die in der XML-Zeichenfolge enthaltene Vorlagenkonfiguration. Falls in der XML-Zeichenfolge Datenpunkte oder Auslöser fehlen, werden diese aus der Datenbank gelöscht, und alles andere bleibt unverändert.

Anfrage:

{
    "jsonrpc": "2.0",
    "method": "configuration.import",
    "params": {
        "format": "xml",
        "rules": {
            "templates": {
                "createMissing": true,
                "updateExisting": true
            },
            "items": {
                "createMissing": true,
                "updateExisting": true,
                "deleteMissing": true
            },
            "triggers": {
                "createMissing": true,
                "updateExisting": true,
                "deleteMissing": true
            },
            "valueMaps": {
                "createMissing": true,
                "updateExisting": false
            }
        },
        "source": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<zabbix_export><version>8.0</version><template_groups><template_group><uuid>7df96b18c230490a9a0a9e2307226338</uuid><name>Templates</name></template_group></template_groups><templates><template><uuid>5aef0444a82a4d8cb7a95dc4c0c85330</uuid><template>New template</template><name>New template</name><groups><group><name>Templates</name></group></groups><items><item><uuid>7f1e6f1e48aa4a128e5b6a958a5d11c3</uuid><name>Zabbix agent ping</name><key>agent.ping</key></item><item><uuid>77ba228662be4570830aa3c503fcdc03</uuid><name>Apache server uptime</name><type>DEPENDENT</type><key>apache.server.uptime</key><delay>0</delay><trends>0</trends><value_type>TEXT</value_type><preprocessing><step><type>REGEX</type><parameters><parameter>&lt;dt&gt;Server uptime: (.*)&lt;\/dt&gt;</parameter><parameter>\\1</parameter></parameters></step></preprocessing><master_item><key>web.page.get[127.0.0.1/server-status]</key></master_item></item><item><uuid>6805d4c39a624a8bab2cc8ab63df1ab3</uuid><name>CPU load</name><key>system.cpu.load</key><value_type>FLOAT</value_type><triggers><trigger><uuid>ab4c2526c2bc42e48a633082255ebcb3</uuid><expression>avg(/New template/system.cpu.load,3m)&gt;2</expression><name>CPU load too high on {HOST.HOST} for 3 minutes</name><priority>WARNING</priority></trigger></triggers></item><item><uuid>590efe5731254f089265c76ff9320726</uuid><name>Apache server status</name><key>web.page.get[127.0.0.1/server-status]</key><trends>0</trends><value_type>TEXT</value_type></item></items><valuemaps><valuemap><uuid>8fd5814c45d44a00a15ac6eaae1f3946</uuid><name>Zabbix agent ping</name><mappings><mapping><value>1</value><newvalue>Available</newvalue></mapping><mapping><value>0</value><newvalue>Not available</newvalue></mapping></mappings></valuemap></valuemaps></template></templates></zabbix_export>\n"
    },
    "id": 1
}

Antwort:

{
    "jsonrpc": "2.0",
    "result": true,
    "id": 1
}

Quelle

CConfiguration::import() in ui/include/classes/api/services/CConfiguration.php.