configuratie.import

Beschrijving

boolean configuration.import(object parameters)

Deze methode maakt het mogelijk om configuratiegegevens te importeren vanuit een geserialiseerde string.

Deze methode is beschikbaar voor gebruikers van elk type. Machtigingen om de methode aan te roepen kunnen worden ingetrokken in de instellingen van de gebruikersrol. Zie Gebruikersrollen voor meer informatie.

Parameters

(object) Parameters die de gegevens bevatten die geïmporteerd moeten worden en regels over hoe de gegevens behandeld moeten worden.

Parameter Type Beschrijving
format string Formaat van de geserialiseerde string.

Mogelijke waarden:
yaml - YAML;
xml - XML;
json - JSON.

Parametergedrag:
- verplicht
source string Geserialiseerde string die de configuratiegegevens bevat.

Parametergedrag:
- verplicht
rules object Regels over hoe nieuwe en bestaande objecten geïmporteerd moeten worden.

De rules-parameter wordt in detail beschreven in de onderstaande tabel.

Parametergedrag:
- verplicht

Als er geen regels worden opgegeven, zal de configuratie niet worden bijgewerkt.

Het rules-object ondersteunt de volgende parameters.

Parameter Type Beschrijving
discoveryRules object Regels over hoe LLD-regels geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe LLD-regels aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande LLD-regels bijgewerkt; standaard: false;
deleteMissing - (boolean) als dit is ingesteld op true, worden LLD-regels die niet aanwezig zijn in de geïmporteerde gegevens, verwijderd uit de database; standaard: false.
graphs object Regels over hoe grafieken geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe grafieken aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande grafieken bijgewerkt; standaard: false;
deleteMissing - (boolean) als dit is ingesteld op true, worden grafieken die niet aanwezig zijn in de geïmporteerde gegevens, verwijderd uit de database; standaard: false.
host_groups object Regels over hoe hostgroepen geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe hostgroepen aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande hostgroepen bijgewerkt; standaard: false.
template_groups object Regels over hoe sjabloongroepen geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe sjabloongroepen aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande sjabloongroepen bijgewerkt; standaard: false.
hosts object Regels over hoe hosts geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe hosts aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande hosts bijgewerkt; standaard: false.
httptests object Regels over hoe webscenario's geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe webscenario's aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande webscenario's bijgewerkt; standaard: false;
deleteMissing - (boolean) als dit is ingesteld op true, worden webscenario's die niet aanwezig zijn in de geïmporteerde gegevens, verwijderd uit de database; standaard: false.
images object Regels over hoe afbeeldingen geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe afbeeldingen aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande afbeeldingen bijgewerkt; standaard: false.
items object Regels over hoe items geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe items aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande items bijgewerkt; standaard: false;
deleteMissing - (boolean) als dit is ingesteld op true, worden items die niet aanwezig zijn in de geïmporteerde gegevens, verwijderd uit de database; standaard: false.
maps object Regels over hoe kaarten geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe kaarten aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande kaarten bijgewerkt; standaard: false.
mediaTypes object Regels over hoe mediatypen geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe mediatypen aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande mediatypen bijgewerkt; standaard: false.
templateLinkage object Regels over hoe sjoemelkoppelingen geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden sjablonen die niet zijn gekoppeld aan de host of het sjabloon dat wordt geïmporteerd, maar wel aanwezig zijn in de geïmporteerde gegevens, gekoppeld; standaard: false;
deleteMissing - (boolean) als dit is ingesteld op true, worden sjablonen die zijn gekoppeld aan de host of het sjabloon dat wordt geïmporteerd, maar niet aanwezig zijn in de geïmporteerde gegevens, ontkoppeld zonder entiteiten te verwijderen (items, triggers, enz.) die zijn overgeërfd van de ontkoppelde sjablonen; standaard: false.
templates object Regels over hoe sjablonen geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe sjablonen aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande sjablonen bijgewerkt; standaard: false.
templateDashboards object Regels over hoe sjabloon-dashboards geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe sjabloon-dashboards aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande sjabloon-dashboards bijgewerkt; standaard: false;
deleteMissing - (boolean) als dit is ingesteld op true, worden sjabloon-dashboards die niet aanwezig zijn in de geïmporteerde gegevens, verwijderd uit de database; standaard: false.
triggers object Regels over hoe triggers geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe triggers aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande triggers bijgewerkt; standaard: false;
deleteMissing - (boolean) als dit is ingesteld op true, worden triggers die niet aanwezig zijn in de geïmporteerde gegevens, verwijderd uit de database; standaard: false.
valueMaps object Regels over hoe waardekaarten van hosts of sjablonen geïmporteerd moeten worden.

Ondersteunde parameters:
createMissing - (boolean) als dit is ingesteld op true, worden nieuwe waardekaarten aangemaakt; standaard: false;
updateExisting - (boolean) als dit is ingesteld op true, worden bestaande waardekaarten bijgewerkt; standaard: false;
deleteMissing - (boolean) als dit is ingesteld op true, worden waardekaarten die niet aanwezig zijn in de geïmporteerde gegevens, verwijderd uit de database; standaard: false.

Retourwaarden

(boolean) Retourneert true als het importeren is gelukt.

Voorbeelden

Een sjabloon importeren

Importeer de sjabloonconfiguratie die is opgenomen in de XML-string. Als er items of triggers ontbreken in de XML-string, worden deze uit de database verwijderd en blijft al het andere ongewijzigd.

Aanvraag:

{
           "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>6.4</version><template_groups><template_group><uuid>7df96b18c230490a9a0a9e2307226338</uuid><name>Sjablonen</name></template_group></template_groups><templates><template><uuid>5aef0444a82a4d8cb7a95dc4c0c85330</uuid><template>Nieuw sjabloon</template><name>Nieuw sjabloon</name><groups><group><name>Sjablonen</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>AFHANKELIJK</type><key>apache.server.uptime</key><delay>0</delay><trends>0</trends><value_type>TEKST</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-belasting</name><key>system.cpu.load</key><value_type>FLOAT</value_type><triggers><trigger><uuid>ab4c2526c2bc42e48a633082255ebcb3</uuid><expression>avg(/Nieuw sjabloon/system.cpu.load,3m)>2</expression><name>CPU-belasting te hoog op 'Nieuwe host' gedurende 3 minuten</name><priority>WAARSCHUWING</priority></trigger></triggers></item><item><uuid>590efe5731254f089265c76ff9320726</uuid><name>Apache serverstatus</name><key>web.page.get[127.0.0.1/server-status]</key><trends>0</trends><value_type>TEKST</value_type></item></items><valuemaps><valuemap><uuid>8fd5814c45d44a00a15ac6eaae1f3946</uuid><name>Zabbix agent ping</name><mappings><mapping><value>1</value><newvalue>Beschikbaar</newvalue></mapping><mapping><value>0</value><newvalue>Niet beschikbaar</newvalue></mapping></mappings></valuemap></valuemaps></template></templates></zabbix_export>\n"
           },
           "id": 1
       }

Reactie:

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

Bron

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