array configuration.importcompare(parametri oggetto)
Questo metodo consente di confrontare il file di importazione con gli elementi del sistema corrente e mostra cosa verrà modificato se questo file di importazione verrà importato.
Questo metodo è disponibile per utenti di qualsiasi tipo. Permessi per chiamare il metodo può essere revocato nelle impostazioni del ruolo utente. Vedere Utente ruoli per maggiori informazioni.
(object)Parametri contenenti i possibili dati da importare e regole di come devono essere gestiti i dati.
| Parametri | Tipo | Descrizione |
|---|---|---|
| format (required) | string | Formato della stringa serializzata. Valori possibili: yaml - YAML;xml - XML;json - JSON. |
| source (required) | string | Stringa serializzata contenente i dati di configurazione. |
| rules (required) | object | Regole su come importare oggetti nuovi ed esistenti. Il parametro regole è descritto in dettaglio nella tabella seguente. |
Se non vengono fornite regole, non ci sarà nulla da aggiornare e il risultato sarà vuoto.
Il confronto sarà essere fatto solo per gruppi host e modelli. Trigger e grafici saranno confrontato solo per i modelli importati, qualsiasi altro sarà considerato come "nuovo".
L'oggetto regole supporta i seguenti parametri.
| Parametro | Tipo | Descrizione |
|---|---|---|
| discoveryRules | object | Regole su come importare le regole LLD. Parametri supportati createMissing - (boolean) se impostato su true, verranno create nuove regole LLD; default: false;updateExisting - (boolean) se impostato su true, le regole LLD esistenti verranno aggiornate; default: false;deleteMissing - (boolean)se impostato a true, le regole LLD non presenti nei dati importati verranno cancellate dal database; default: false. |
| graphs | object | Regole su come importare i grafici. Parametri supportati: createMissing - (boolean) se impostato su true, verranno creati nuovi grafici; default: false;updateExisting - (boolean) se impostato su true, i grafici esistenti verranno aggiornati; default: false;deleteMissing - (boolean)se impostato a true, i grafici non presenti nei dati importati verranno eliminati dal database; default: false. |
| groups | object | Regole su come importare i gruppi host. Parametri supportati: createMissing - (boolean)se impostato su true, verranno creati nuovi gruppi host; default: false;updateExisting - (boolean)se impostato su true, i gruppi host esistenti verranno aggiornati; default: false. |
| hosts | object | Regole su come importare host. Parametri supportati: createMissing - (boolean) se impostato su true, verranno creati nuovi host; default: false;updateExisting - (boolean) se impostato su true, gli host esistenti verranno aggiornati; default: false.Questo parametro non farà alcuna differenza per l'output. È consentito solo per coerenza con configuration.import. |
| httptests | object | Regole su come importare scenari web. Parametri supportati: createMissing - (boolean) se impostato su true, verranno creati nuovi scenari web; default: false;updateExisting - (boolean)se impostato su true, gli scenari web esistenti verranno aggiornati; default: false;deleteMissing - (boolean) if set to true, se impostato a true, gli scenari web non presenti nei dati importati verranno eliminati dal database; predefinito: falso. |
| images | object | Regole su come importare le immagini. Parametri supportati: createMissing - (boolean) se impostato su true, verranno create nuove immagini; default: false;updateExisting - (boolean)se impostato su true, le immagini esistenti verranno aggiornate; predefinito: falso.Questo parametro non farà alcuna differenza per l'output. È consentito solo per coerenza con configuration.import. |
| items | object | Regole su come importare elementi. Parametri supportati: createMissing - (boolean)se impostato su true, verranno creati nuovi elementi; default: false;updateExisting - (boolean)se impostato su true, gli elementi esistenti verranno aggiornati; default: false;deleteMissing - (boolean)se impostato a true, gli elementi non presenti nei dati importati verranno eliminati dal database; predefinito: falso. |
| maps | object | Regole su come importare le mappe. Parametri Supportati: createMissing - (boolean)se impostato su true, verranno create nuove mappe; predefinito: falso;updateExisting - (boolean)se impostato su true, le mappe esistenti verranno aggiornate; default: false.Questo parametro non farà alcuna differenza per l'output. È consentito solo per coerenza con configuration.import. |
| mediaTypes | object | Regole su come importare i tipi di media. Parametri supportati: createMissing - (boolean) se impostato su true, verranno creati nuovi tipi di media; default: false;updateExisting - (boolean) se impostato su true, i tipi di media esistenti verranno aggiornati; default: false.Questo parametro non farà alcuna differenza per l'output. È consentito solo per coerenza con configuration.import. |
| templateLinkage | object | Regole su come importare i link dei template. Parametri supportati: createMissing - (boolean) se impostato su true, verranno creati nuovi link tra i template e l'host ; default: false;deleteMissing - (boolean) se impostato a true, i link ai template non presenti nei dati importati verranno cancellati dal database; predefinito: falso. |
| templates | object | Regole su come importare modelli. Parametri supportati: createMissing - (boolean) se impostato su true, verranno creati nuovi modelli; default: false;updateExisting - (boolean) se impostato su true, i modelli esistenti verranno aggiornati; predefinito: falso. |
| templateDashboards | object | Regole su come importare i dashboard dei modelli. Parametri supportati: createMissing - (boolean) se impostato su true, verranno creati nuovi dashboard dei modelli; default: false;updateExisting - (boolean) se impostato su true, i dashboard dei modelli esistenti verranno aggiornati; default: false;deleteMissing - (boolean) se impostato a true, i dashboard dei modelli non presenti nei dati importati verranno eliminati dal database; predefinito: falso. |
| trigger | oggetto | Regole su come importare i trigger. Parametri supportati: createMissing - (boolean) se impostato su true, verranno creati nuovi trigger; default: false;updateExisting - (boolean) se impostato su true, i trigger esistenti verranno aggiornati; default: false;deleteMissing - (boolean) se impostato a true, i trigger non presenti nei dati importati verranno eliminati dal database; predefinito: falso. |
| valueMaps | object | Regole su come importare mappe di valori host o modelli. Parametri supportati: createMissing - (boolean) se impostato su true, verranno create nuove mappe di valori ; default: false;updateExisting - (boolean) se impostato su true, le mappe dei valori esistenti verranno aggiornate; default: false;deleteMissing - (boolean) se impostato a true, le mappe dei valori non presenti nei dati importati verranno cancellate dal database; predefinito: falso. |
(array) Restituisce un array con modifiche nella configurazione, che sarà fatto.
Importa il modello e gli elementi contenuti nella stringa YAML. Se ci sono oggetti mancanti in YAML, verranno mostrati come eliminati e tutto il resto rimarrà invariato.
Richiesta:
{ "jsonrpc": "2.0", "metodo": "configuration.import", "parametri": { "formato": "xml", "regole": { "gruppi": { "createMissing": vero, "aggiornamento esistente": vero }, "modelli": { "createMissing": vero, "aggiornamento esistente": vero }, "Oggetti": { "createMissing": vero, "aggiornamento esistente": vero, "deleteMissing": vero }, "trigger": { "createMissing": vero, "aggiornamento esistente": vero, "deleteMissing": vero }, "DiscoveryRules": { "createMissing": vero, "aggiornamento esistente": vero, "deleteMissing": vero }, "valueMaps": { "createMissing": vero, "aggiornamento esistente": falso } }, "source": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><zabbix_export><version>5.4</version><date>27-05-2021T07:12:07Z< /date><groups><group><uuid>6f6799aa69e844b4b3918f779f2abf08</uuid><name>Server Zabbix</name></group></groups><templates><template><uuid>e1bde9bf2f0544f5929f45b82502e744</uuid><template >Modello di esportazione</template><name>Modello di esportazione</name><groups><group><name>Server Zabbix</name></group></groups><items><item><uuid>3237bc89226e42ed8207574022470e83< /uuid><name>Elemento</name><key>item.key</key><delay>30s</delay><valuemap><name>Stato host</name></valuemap><triggers><trigger ><uuid>bd1ed0089e4b4f35b762c9d6c599c348</uuid><expression>last(/Export template/item.key)=0</expression><name>Trigger</name></trigger></triggers></item></ items><discovery_rules><discovery_rule><uuid>c91616bcf4a44f349539a1b40cb0979d</uuid><name>Regola di rilevamento</name><key>rule.key</key><item_prototypes><item_prototype><uuid>7e164881825744248b3039af3435cf4b</uuid> name>Prototipo oggetto</name><key>prototype.key</ key></item_prototype></item_prototypes></discovery_rule></discovery_rules><valuemaps><valuemap><uuid>7e666857c5df4af3a338349586f2afc3</uuid><name>Stato host</name><mappings><mapping><value> 0</value><newvalue>Su</newvalue></mapping><mapping><value>2</value><newvalue>Irraggiungibile</newvalue></mapping></mappings></valuemap></ valuemaps></template></templates></zabbix_export>" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }Risposta:
{ "jsonrpc": "2.0", "risultato":{ "modelli":{ "aggiornato":[ { "prima":{ "uuid":"e1bde9bf2f0544f5929f45b82502e744", "template": "Esporta modello", "name": "Esporta modello" }, "dopo":{ "uuid":"e1bde9bf2f0544f5929f45b82502e744", "template": "Esporta modello", "name": "Esporta modello" }, "Oggetti":{ "aggiunto":[ { "dopo":{ "uuid":"3237bc89226e42ed8207574022470e83", "nome": "Articolo", "chiave":"elemento.chiave", "ritardo": "30 anni", "mappa dei valori":{ "name":"Stato host" } }, "trigger":{ "aggiunto":[ { "dopo":{ "uuid":"bd1ed0089e4b4f35b762c9d6c599c348", "expression":"last(/Esporta modello/item.key)=0", "nome": "Trigger" } } ] } } ], "RIMOSSO":[ { "prima":{ "uuid":"bd3e7b28b3d544d6a83ed01ddaa65ab6", "name": "Oggetto vecchio", "key":"ite_old.key", "ritardo": "30 anni", "mappa dei valori":{ "name":"Stato host" } } } ] }, "discovery_rules":{ "aggiornato":[ { "prima":{ "uuid":"c91616bcf4a44f349539a1b40cb0979d", "name": "Regola di rilevamento", "chiave":"regola.chiave" }, "dopo":{ "uuid":"c91616bcf4a44f349539a1b40cb0979d", "name": "Regola di rilevamento", "chiave":"regola.chiave" }, "item_prototypes":{ "aggiornato":[ { "prima":{ "uuid":"7e164881825744248b3039af3435cf4b", "name": "Prototipo di vecchio oggetto", "key":"prototype_old.key" }, "dopo":{ "uuid":"7e164881825744248b3039af3435cf4b", "name":"Prototipo dell'oggetto", "chiave":"prototipo.chiave" } } ] } } ] } } ] } }, "id": 1 }CConfiguration::importcompare() in ui/include/classes/api/services/CConfiguration.php.