This is a translation of the original English documentation page. Help us make it better.

configuration.importcompare

Descrizione

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.

Parametri

(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.

Restituisce i valori

(array) Restituisce un array con modifiche nella configurazione, che sarà fatto.

Esempi

Importazione di host ed elementi

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
       }

Fonte

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