Staging
Einführung in Staging in ConSol CM
Staging ist ein Verfahren, mit dem Daten zwischen zwei ConSol CM-Systemen übertragen werden können. Die Daten werden mithilfe einer Szenariodatei aus dem Ursprungssystem exportiert und in das Zielsystem importiert.
Konzepte, Begriffe und Definitionen
Konzept |
Andere Begriffe |
Definition |
---|---|---|
Szenario |
Scene |
ZIP-Datei, die ConSol CM-Daten für das Staging enthält |
Übertragungsschlüssel |
Transfer key |
Eindeutige ID von ConSol CM-Objekten |
Workflow-Installation |
|
Prozess zur Inbetriebnahme einer neuen Workflow-Version |
Zweck und Verwendung
Staging ermöglicht die Datenübertragung zwischen ConSol CM-Systemen. Eine Szenariodatei wird aus dem Ursprungssystem exportiert und in das Zielsystem importiert. Diese Datei kann sowohl Konfigurations- als auch Laufzeitdaten enthalten.
Bei der Anpassung von ConSol CM für einen bestimmten Kunden wird normalerweise mit mehreren ConSol CM-Systemen gearbeitet, z. B. einem Entwicklungssystem, einem Test- / Integrationssystem und einem Produktivsystem.
Da ConSol CM für alle Objekte mit Übertragungsschlüsseln arbeitet, wird dringend empfohlen Daten über ein Szenario zu übertragen. Implementieren Sie nicht die gleiche Funktionalität auf beiden System, da die erstellten Objekte unterschiedliche Übertragungsschlüssel haben würden, was bei einer unter Umständen später durchgeführten Datenübertragung zu duplizierten Objekten führen würde.
Verfügbare Einstellungen für Exporte
Der Umfang des Exports, d. h. welche Objekte in der Szenariodatei enthalten sind, wird durch die Ihre Auswahl auf der Exportseite bestimmt. Wenn Sie eine Option auswählen, die Abhängigkeiten zu anderen Optionen hat, werden diese Optionen automatisch ausgewählt, sodass Sie sehen können, welche Objekte mit Ihrer aktuellen Auswahl exportiert werden.
Die verfügbaren Optionen für Exporte sind in mehreren Abschnitten gruppiert.
Laufzeitdaten
Die Optionen in diesem Abschnitt exportieren Laufzeitdaten wie tatsächliche Vorgänge, Kontakte und Ressourcen, und die zugehörige Konfiguration.
- Alle Daten
Exportiert alle Laufzeit- und Konfigurationsdaten mit Ausnahme der Systemdokumentation. - Einzelner Vorgang
Geben Sie den Namen des Vorgangs in das Feld Vorgangsname ein. Dieser Vorgang und alle Konfigurationsdaten, mit Ausnahme der Systemdokumentation, werden exportiert. Sie können die Checkbox Anonymisiert auswählen, um folgende Daten zu anonymisieren:- Inhalt von Vorgangsfeldern (außer einigen Werten, wie beispielsweise Listenwerten)
- Attachments von Vorgängen
- Vorgangsprotokoll
- Inhalt von Kontaktfeldern
- Kontaktprotokoll
Diese Option sollte nur für die Analyse von Fehlern verwendet werden.
- Alle Daten außer Vorgänge
Exportiert alle Kontakte und Ressourcen, und alle Konfigurationsdaten mit Ausnahme der Systemdokumentation. - Kontaktdaten
Exportiert alle Kontakte und das Kontaktdatenmodell. - Ressourcendaten
Exportiert alle Ressourcen und das Ressourcendatenmodell.
Konfigurationsdaten
Die Optionen in diesem Abschnitt exportieren Konfigurationsdaten.
- Alle
Exportiert alle Konfigurationsdaten mit Ausnahme der Systemdokumentation. - Benutzer
Exportiert alle Benutzer, einschließlich der Portal-Benutzerprofile, und die Referenzen zu ihren zugewiesenen Rollen. - Definitionen von sortierten Listen
Exportiert alle Listen. - Definitionen von hierarchischen Listen
Exportiert alle hierarchischen Listen. Dies umfasst die verwendeten Listen und die Datenfelder. - Skripte
Exportiert alle Skripte. - Webhooks
Exportiert alle Webhook-Konfigurationen und Integrationsskripte. - Templates
Exportiert alle in der Web Admin Suite erstellten Templates. - Kundendatenmodelle
Exportiert alle Kundendatenmodelle, einschließlich Datenfelder, Aktionen, Relationen und Portal-Benutzerprofile. - Ressourcendatenmodelle
Exportiert die Ressourcendatenmodelle, einschließlich Datenfeldern, Aktionen und Relationen. -
Queue-basierte Daten
Exportiert Queues, Listen, Skripte, Datenmodelle, Portal-Benutzerprofile und Textklassen, und Objekte, für die keine eigene Exportoption existiert, z. B. Rollen. Wählen Sie die Queues, die exportiert werden sollen, im darunter angezeigten Feld Zu exportierende Queues aus.Mit der Option Alle Queues können Sie alle Queues auswählen.
- Textklassen
Exportiert Textklassen und Sichtbarkeitskonfigurationen. - Seitenanpassungen
Exportiert alle Seitenanpassungen, die speziell für das System definiert wurden. Dies sind die Werte, die in den Datenbanktabellen cmas_web_customization und cmas_web_customization_values gespeichert sind. Standardwerte werden nur exportiert, wenn sie vorher einen anderen Wert hatten und manuell durch Klicken auf den Button Aktualisieren wieder auf den Standardwert gesetzt wurden. - Skindateien und Webressourcen
Exportiert den Inhalt der Ordner design und resources des ConSol CM-Datenverzeichnisses. - Webformulare
Exportiert alle Webformulare. - Textvorlagen
Exportiert alle Textvorlagen, d. h. die im Web Client erstellten Vorlagen. - Dokumentvorlagen
Exportiert alle Dokumentvorlagen. - Client-Konfigurationen
Exportiert alle Client-Konfigurationen.
Hinweis zu System-Properties
Der Szenarioexport enthält nur selbst erstellten System-Properties, deren Modul mit custom- beginnt, siehe Importieren und Exportieren von System-Properties.
Workflows
Wenn der Export Workflows enthält, werden die Optionen im Bereich Workflows aktiv. Es gibt zwei Optionen:
- Nur die neuste installierte Version
Exportiert nur die installierten Versionen der Workflows, d. h. der Export enthält nur eine Version jedes Workflows. - Alle Workflow-Versionen
Exportiert alle Versionen aller Workflows, d. h. sowohl die aktuell installierte Version als auch alle älteren Versionen sind im Export enthalten.Abhängig von der Anzahl der im System gespeicherten Workflows, kann der Export sehr lange dauern und eine sehr große Szenariodatei erzeugen. Normalerweise ist es nicht erforderlich, alle Workflow-Versionen zu exportieren.
Systemdokumentation
Enthält eine Option zum Exportieren der Systemdokumentation. Diese Option ist von den anderen Optionen unabhängig. Mit der Exportdatei kann im Abschnitt Dokumentationsgenerator des Admin Tools eine Systemdokumentation erstellt werden.
Verfügbare Einstellungen für Importe
Der Verhalten des Imports kann im Bereich Erweiterte Importeinstellungen konfiguriert werden.
Normalerweise müssen diese Einstellungen nicht geändert werden.
Es sind folgende Einstellungen verfügbar:
- Modus
Legt das Verhalten bei Fehlern während des Imports fest.- Bei Fehlern abbrechen
Der Import wird abgebrochen, wenn ein Fehler auftritt. Dies ist das Standardverhalten, das bei der regulären Arbeit mit dem System verwendet werden sollte, z. B. zur Übertragung von Daten von einem Entwicklungssystem auf ein Produktivsystem. - Fehler ignorieren
Fehlerhafte Daten werden beim Import ignoriert. Mit dieser Option kann der Import auch dann fortgesetzt werden, wenn es Probleme mit den Daten gibt, z. B. weil ein referenziertes Objekt nicht auf dem Zielsystem gefunden wurde. Diese Option kann für Importe in Testsysteme nützlich sein. Wenn Sie sie auf Produktivsystemen nutzen, müssen Sie die erkannten Probleme nach dem Import lösen. - Import erzwingen
Fehlerhafte Daten werden ins Zielsystem importiert. Diese Option sollte nur auf Entwicklungssystemen oder vom Supportteam verwendet werden, um Fehler nachzustellen.
- Bei Fehlern abbrechen
-
Alle vorhandenen Daten löschen
Löscht alle vorhandenen Laufzeit- und Konfigurationsdaten aus der Datenbank. Diese Option sollte nur verwendet werden, um ein ganz neues System mit dem Szenario zu erzeugen.Wenn der Systemtyp „prod“ ist (siehe System-Property system.flavour) schlägt der Import fehl, wenn diese Option ausgewählt ist.
Prinzipien des Imports von Konfigurationsdaten
Wenn die Option zum Löschen aller vorhandenen Daten nicht ausgewählt ist, wird der Datenimport entsprechend den folgenden Prinzipien durchgeführt:
-
Daten werden nur hinzugefügt und nicht gelöscht.
-
Wenn das importierte Szenario das gleiche Feld / den gleichen Parameter enthält wie das Zielsystem, überschreibt der Wert aus dem Szenario den Wert auf dem Zielsystem.
Beispiel: Das Feld priority hat im importierten Szenario die Position “0;2”. Das Zielsystem hat für dieses Feld die Position “2;2”. Nach dem Import hat das Feld im Zielsystem die Position “0;2”.
-
Wenn das importierte Szenario mehr Parameter enthält als das Zielsystem, werden die Parameter auf dem Zielsystem hinzugefügt.
Beispiel: Im importierten Szenario hat das Feld priority die Einstellung Sichtbarkeit mit dem Wert Nie. Im Zielsystem existiert das Feld priority, aber es hat diese Einstellung nicht. Nach dem Import hat das Feld priority auf dem Zielsystem die Einstellung Sichtbarkeit mit dem Wert Nie.
-
Wenn das importierte Szenario weniger Daten / Parameter hat als das Zielsystem, bleiben die Daten auf dem Zielsystem erhalten. Es wird nichts gelöscht.
Beispiel: Das Feld priority im importierten Szenario hat die Einstellung Sichtbarkeit mit dem Wert Nie nicht, diese Einstellung ist aber auf dem Zielsystem vorhanden. Nach dem Import ist die Einstellung auf dem Zielsystem noch vorhanden.
-
Bei Skripten und Templates wird die letzte Version entsprechend des Zeitstempels verwendet. Das kann die Version des importierten Szenarios oder des Zielsystems sein.
-
Objekte werden über interne Übertragungsschlüssel identifiziert. Wenn ein importiertes Szenario ein Objekt mit dem gleichen Namen aber einem anderen Übertragungsschlüssel enthält, sind dies zwei verschiedene Objekte und das neue Objekt wird im Zielsystem angelegt.
Beispiel: Sowohl im importierten Szenario als auch auf dem Zielsystem existiert ein Benutzer admin. Wenn die Übertragungsschlüssel unterschiedlich sind, gibt es nach dem Import auf dem Zielsystem einen Benutzer admin und einen Benutzer admin (1). Wenn so eine Situation auftritt und Sie diese für zukünftige Importe vermeiden möchten, müssen Sie den ursprünglichen Benutzer admin auf dem Zielsystem löschen und den importierten Benutzer admin (1) in admin umbenennen. Das Problem tritt dann im nächsten Import nicht mehr auf.
-
System-Properties, deren Modulname mit custom- beginnt, werden beim Import im Zielsystem angelegt, wenn sie noch nicht vorhanden waren. Wenn eine solche Property bereits auf dem Zielsystem vorhanden ist, wird ihr Wert mit dem Wert aus dem importierten Szenario aktualisiert. Andere System-Properties werden durch Imports nie verändert, siehe Importieren und Exportieren von System-Properties.
Prinzipien des Imports von Laufzeitdaten
Die Funktion zum Import von Laufzeitdaten ist lediglich für die Verwendung auf Test- und Entwicklungssystemen vorgesehen. Große Mengen an Laufzeitdaten, z. B. aus Produktivsystemen, müssen mit ETL-Tools exportiert und importiert werden.
Wenn die Option zum Löschen aller vorhandenen Daten nicht ausgewählt ist, wird der Datenimport entsprechend den folgenden Prinzipien durchgeführt:
- Wenn ein durch den Übertragungsschlüssel identifiziertes Objekt im Zielsystem bereits existiert, wird das Objekt durch den Import nicht modifiziert. Es werden keine Felder hinzugefügt oder gelöscht und vorhandene Felder werden nicht geändert. Auf diese Weise sind vorhandene Objekte (Vorgänge, Kontakte, Ressourcen) vor versehentlicher Änderung durch Testdaten geschützt.
Datenbanktransaktionen
Der Import von Konfigurationsdaten aus einem Szenario wird auf mehrere Datenbanktransaktionen verteilt. Damit wird die Speichernutzung auf dem Datenbankserver begrenzt. Bei schwerwiegenden Fehlern während des Imports kann dies allerdings zu einem inkonsistenten Systemzustand führen.
Mit der System-Property cmas-core-server, config.import.global.transaction.enabled kann das System so konfiguriert werden, dass alle Konfigurationselemente eines Szenarios in einer einzigen großen Datenbanktransaktion gekapselt werden. Wenn diese Option aktiviert ist, kann ein schwerwiegender Fehler beim Import das System nicht in einem inkonsistenten Zustand zurücklassen. Stattdessen wird die gesamte gekapselte Transaktion zurückgerollt, sodass das System aus Konfigurationssicht wieder auf den Zustand vor dem Import zurückgesetzt wird. Die Transaktionskapselung gilt nicht für Lokalisierungen oder Laufzeitdaten, die unabhängig von dieser Einstellung behandelt werden.
Die Aktivierung der Transaktionskapselung kann dazu führen, dass die Importverarbeitung länger dauert und mehr Speicherplatz auf dem Datenbankserver benötigt wird.
Grundlegende Aufgaben
Zum Staging gehören drei Aufgaben:
- Exportieren der Daten des Ausgangssystems in eine Datei, siehe Exportieren eines Szenarios.
- Importieren der Szenariodatei in das aktuelle System, siehe Importieren eines Szenarios.
- Übertragen der Vorgänge nach einer fehlgeschlagenen Workflow-Installation, siehe Übertragen von Vorgängen.
Alle Export- und Importaktionen werden in der Datei transfer.log protokolliert.
Exportieren eines Szenarios
Gehen Sie folgendermaßen vor, um ein Szenario zu exportieren:
- Wählen Sie die gewünschten Einstellungen auf der Seite Export, siehe Verfügbare Einstellungen für Exporte.
- Klicken Sie auf den Button Exportieren. Wenn der Export abgeschlossen ist, können Sie die Datei mit Ihrem Browser speichern.
Importieren eines Szenarios
Gehen Sie folgendermaßen vor, um ein Szenario zu importieren:
- Klicken Sie auf der Seite Import auf den Button Datei auswählen, und wählen Sie die Szenariodatei aus.
- Falls erforderlich, wählen Sie die gewünschten Einstellungen im Bereich Erweiterte Importeinstellungen, siehe Verfügbare Einstellungen für Importe.
- Klicken Sie auf den Button Importieren. Es wird ein Modalfenster geöffnet, in dem Sie den Importfortschritt und die zugehörigen Log-Meldungen sehen. Sobald der Import abgeschlossen ist, sehen Sie die Ergebnisse im Bereich Ergebnisse des Imports.
Erweiterte Aufgaben
Übertragen von Vorgängen
Wenn bei der Workflow-Installation ein Fehler auftritt, können Sie die Vorgänge, die nicht in den neuen Workflow übertragen werden konnten, über die Funktion zur Vorgangsübertagung auf der Seite Import übertragen.
- Klicken Sie auf den Button Vorgänge übertragen. Es wird ein Modalfenster mit den Übertragungseinstellungen geöffnet.
- Wählen Sie die Queues, für die die Vorgänge übertragen werden sollen.
- Wählen Sie den Übertragungsmodus. Es gibt zwei Optionen:
- Position im Prozess behalten
Die Vorgänge versuchen, ihre aktuelle Position im Prozess beizubehalten:- Wenn sich die Aktivität und der Bereich nicht geändert haben, verbleibt der Vorgang an seiner Position.
- Wenn die Aktivität nicht mehr vorhanden ist, kehrt der Vorgang an die letzte konsistente Position im Prozess zurück.
- Prozess neu starten
Alle Vorgänge kehren an den Startknoten des Workflows zurück, d. h. sie beginnen den Prozess von vorne.
- Position im Prozess behalten
- Klicken Sie auf Vorgänge übertragen. Die Ergebnisse der Übertragung werden nach Abschluss in einem Modalfenster angezeigt.