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.
(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 . |
(boolean)
Retourneert true
als het importeren is gelukt.
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:
CConfiguration::import() in ui/include/classes/api/services/CConfiguration.php.