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. Toestemmingen om de methode te gebruiken kunnen worden ingetrokken in de gebruikersrol-instellingen. Zie Gebruikersrollen voor meer informatie.

Parameters

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

Parameter Type Beschrijving
format
(vereist)
string Formaat van de geserialiseerde string.

Mogelijke waarden:
yaml - YAML;
xml - XML;
json - JSON.
source
(vereist)
string Geserialiseerde string die de configuratiegegevens bevat.
rules
(vereist)
object Regels over hoe nieuwe en bestaande objecten geïmporteerd moeten worden.

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

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

The rules object supports the following parameters.

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

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

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

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

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

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

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

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

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

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

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

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

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

Retourwaarden

(boolean) Retourneert true als het importeren is gelukt.

Voorbeelden

Een sjabloon importeren

Importeer de sjabloonconfiguratie die in de XML-string is opgenomen. Als er items of triggers in de XML-string ontbreken, worden ze uit de database verwijderd en blijft alles wat overblijft 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.0</version><date>2023-01-01T12:00:00Z</date><groups><group><uuid>7df96b18c230490a9a0a9e2307226338</uuid><name>Templates</name></group></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 'New 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"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Antwoord:

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

Bron

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