configuration.import
Beschreibung
boolean configuration.import(object parameters)
Diese Methode ermöglicht den Import von Konfigurationsdaten aus einer serialisierten Zeichenkette.
Diese Methode steht Nutzern jeder Art zur Verfügung. Die Berechtigung zum Aufruf der Methode kann in den Benutzerrolleneinstellungen widerrufen werden. Prüfen Sie Benutzerrollen für mehr Informationen.
Parameter
(object) Parameter, die die zu importierenden Daten und Regeln dazu enthalten, wie die Daten verarbeitet werden sollen.
| Parameter | Type | Beschreibung |
|---|---|---|
| format | string | Format der serialisierten Zeichenkette. Mögliche Werte: yaml - YAML;xml - XML;json - JSON.Parameter behavior: - required |
| source | string | Serialisierte Zeichenkette, die die Konfigurationsdaten enthält. Parameter behavior: - required |
| rules | object | Regeln dafür, wie neue und vorhandene Objekte importiert werden sollen. Benutzer vom Typ Admin dürfen nur die Objekte importieren, für die sie Lese-/Schreib- Berechtigung haben, sowie Karten. Zum Beispiel dürfen ein Host und seine Entitäten (Datenpunkte, Auslöser, Diagramme usw.) nur importiert werden, wenn die Benutzergruppe des Benutzers eine Berechtigung für die Hostgruppe hat, 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.Parameter behavior: - required |
| returnMissingObjects | boolean | Legt fest, 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 dafür, wie Dashboards importiert werden sollen. 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 dafür, wie LLD-Regeln importiert werden sollen. 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. |
| graphs | object | Regeln dafür, wie Diagramme importiert werden sollen. 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 dafür, wie Hostgruppen importiert werden sollen. 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. |
| template_groups | object | Regeln dafür, wie Vorlagengruppen importiert werden sollen. 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. |
| hosts | object | Regeln dafür, wie Hosts importiert werden sollen. 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 dafür, wie Webszenarien importiert werden sollen. Unterstützte Parameter: createMissing - (boolean) wenn auf true gesetzt, werden neue Webszenarien erstellt; Standard: false;updateExisting - (boolean) wenn auf true gesetzt, werden vorhandene Webszenarien aktualisiert; Standard: false;deleteMissing - (boolean) wenn auf true gesetzt, werden Webszenarien, die in den importierten Daten nicht vorhanden sind, aus der Datenbank gelöscht; Standard: false. |
| images | object | Regeln dafür, wie Bilder importiert werden sollen. 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 dafür, wie Datenpunkte importiert werden sollen. 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 dafür, wie Karten importiert werden sollen. 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 dafür, wie Medientypen importiert werden sollen. 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. |
| templateLinkage | object | Regeln dafür, wie Vorlagenverknüpfungen importiert werden sollen. Unterstützte Parameter: createMissing - (boolean) wenn auf true gesetzt, werden Vorlagen, die nicht mit dem importierten Host oder der importierten 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 importierten Host oder der importierten Vorlage verknüpft sind, aber in den importierten Daten nicht vorhanden sind, getrennt, ohne dabei Entitäten (Datenpunkte, Auslöser usw.) zu entfernen, die von den getrennten Vorlagen geerbt wurden; Standard: false. |
| templates | object | Regeln dafür, wie Vorlagen importiert werden sollen. 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. |
| templateDashboards | object | Regeln dafür, wie Vorlagen-Dashboards importiert werden sollen. 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. |
| triggers | object | Regeln dafür, wie Auslöser importiert werden sollen. 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 dafür, wie Wertzuordnungen von Host oder Vorlage importiert werden sollen. 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.
{
"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><dt>Server uptime: (.*)<\/dt></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)>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.