Lokale Debug-Assemblies erstellen
Um lokale Debug-Assemblies zu erzeugen
-
Aktivieren Sie im Database Compiler auf der Seite Kompiliervorgaben die Option Debuginformationen erzeugen.
-
Wählen Sie die Kompilervorgabe Skripte inkl. aller Abhängigkeiten.
-
Starten Sie die Kompilierung.
Während der Kompilierung werden zusätzlich Meldungen ausgegeben, die auf die lokale Erstellung der Debug-Assemblies hinweisen. Einige Kompilierschritte, wie beispielsweise die Kompilierung der Webprojekte, werden übersprungen, da diese nicht lokal debuggt werden können.
Der Database Compiler erzeugt auf dem lokalen Computer im Verzeichnis %USERPROFILE%\AppData\Local\One Identity\One Identity Manager\AssemblyCache die Assemblies, die zugehörigen PDB Dateien.
Der Quellcode wird im Verzeichnis %USERPROFILE%\AppData\Local\One Identity\One Identity Manager\AssemblyCache\Sources erzeugt.
Die Assemblies werden dabei nicht in die Datenbank übertragen.
Im Object Browser debuggen
HINWEIS: Das lokale Debuggen kann so lange verwendet werden bis auf der Arbeitsstation selbst Assemblies ohne Debug-Informationen erzeugt werden oder über die Datenbankverbindung neuer Assemblies geladen werden.
Um im Object Browser zu debuggen
-
Starten Sie den Object Browser und wählen Sie das Menü Debug > Debugger starten/stoppen.
Das Visual Studio gestartet und der Object Browser wird mit dem Debugger verbunden. Dieser Vorgang kann etwas Zeit in Anspruch nehmen. Ist die Verbindung zum Visual Studio hergestellt, wird Dialog Breakpoints verwalten geöffnet.
-
Im Dialog Breakpoints verwalten können Sie verschiedene Breakpoints für Skripte, Bildungsregeln, Formatskripten, Tabellenskripten, Prozessen und Methoden definieren.
-
Um einen neuen Breakpoint zu definieren, klicken Sie und wählen Sie eine der folgenden Optionen
-
Skriptausführung: Ein neuer Breakpoint vom Typ Skript wird hinzugefügt. Wählen Sie unter Breakpoint-Operation das Skript.
-
Spaltenmethoden: Ein Breakpoint vom Typ Spalte wird hinzugefügt. Wählen Sie unter Breakpoint-Operation das Formatierungsskript, die Bildungsregel oder das Skript zum bedingten Entfernen von Berechtigungen.
-
Tabellenmethoden: Ein neuer Breakpoint vom Typ Tabellenskipt wird hinzugefügt. Wählen Sie unter Breakpoint-Operation das Tabellenskript.
-
Prozessgenerierung: Ein Breakpoint vom Typ Prozess wird hinzugefügt. Wählen Sie unter Breakpoint-Operation den Prozess.
-
Objektmethode: Ein Breakpoint vom Typ Objektmethode wird hinzugefügt. Wählen Sie unter Breakpoint-Operation die Methodendefinition.
-
Um einen vorhandenen Breakpoint zu verwenden, wählen die den Breakpoint aus der Liste.
-
Um einen Breakpoint zu entfernen, wählen Sie den Breakpoint in der Liste und klicken Sie .
-
Um alle Breakpoints zu entfernen, klicken Sie .
-
Klicken Sie OK.
Der Dialog Breakpoints verwalten wird geschlossen. Die Breakpoint-Definitionen werden an das Visual Studio übertragen.
HINWEIS: Sie können den Dialog Breakpoints verwalten über das Menü Debug > Breakpoints konfiguieren wieder erreichen.
-
Führen Sie nun im Object Browser die Aktionen aus, die Sie debuggen möchten, beispielsweise das Skript aufrufen, die Bildungsregel einer Spalte ausführen oder den Prozess generieren.
Sobald die Aktion ausgeführt werden soll, wird die Visual Studio Anwendung in den Vordergrund geholt und zeigt die Quellcodestelle mit dem gewählten Breakpoint. Ab diesen Punkt stehen Ihnen die umfangreichen Debug-Möglichkeiten von Visual Studio im vollen Umfang zur Verfügung. Mit F10 können Sie beispielsweise Zeile für Zeile den Quellcode durchlaufen und mit F5 die Anwendung wieder fortsetzen.
-
Haben Sie das Debugging abgeschlossen, wählen Sie das Menü Debug > Debugger starten/stoppen.
Das Visual Studio wird von Object Browser getrennt und geschlossen.
Verwandte Themen
Fehlerbehebung für das Debugging im Object Browser
Problem
Im Database Compiler wird die Option Debuginformationen erzeugen nicht angezeigt.
Ursache
Dem verwendeten Systembenutzer ist die Programmfunktion Erlaubt das Erstellen lokaler Debug-Assemblies (Common_CompileForDebug) nicht über seine Berechtigungsgruppen zugewiesen.
Lösung
Weisen Sie im Designer die Programmfunktion an eine kundenspezifische Berechtigungsgruppe zu und nehmen Sie den Systembenutzer in die Berechtigungsgruppe auf. Ausführliche Informationen Steuern von Berechtigungen über Programmfunktionen finden Sie im One Identity Manager Handbuch zur Autorisierung und Authentifizierung.
Problem
Im Object Browser wird das Menü Debug nicht angezeigt.
Mögliche Ursachen
Mögliche Lösungen
Problem
Die Breakpoints im Visual Studio werden als inaktiv angezeigt.
Ursache
Breakpoints werden als inaktiv angezeigt, wenn die Assembly mit der zu debuggenden Funktion noch nicht im Prozessraum geladen ist. Beispielsweise werden die Assemblies zur Prozessgenerierung erst zum Zeitpunkt der Generierung in die Anwendung geladen. Ab dann wird der Breakpoint als aktiv erkannt und angesprungen.
Problem
Die Breakpoints im Visual Studio werden immer als inaktiv angezeigt und werden auch nicht angesprungen.
Mögliche Ursachen
Mögliche Lösung
Ist das Visual Studio mit dem Object Browser verbunden, wechseln Sie in das verbundene Visual Studio und öffnen die Ansicht Debug > Windows > Modules. Hier finden Sie die Auflistung aller geladenen Modulen und Zusatzinformationen.
One Identity Manager Abfragesprache
Die One Identity Manager Abfragesprache (auch One Identity Manager Query Language) kann zum Erstellen von Abfragen oder Where-Klausel-Ausdrücke gegen die One Identity Manager-Objektschicht verwendet werden.
Die One Identity Manager Abfragesprache wird beispielsweise für die Kommunikation zwischen Anwendungsserver und Client genutzt. Sie können die One Identity Manager Abfragesprache derzeit im Object Browser im Abfragefenster verwenden.
Die Abfragesprache unterscheidet nicht zwischen Groß- und Kleinschreibung. Schlüsselwörter können in Groß- oder Kleinschreibung geschrieben werden. Um leichter erkennbar zu sein, werden Schlüsselwörter in den folgenden Beispielen immer in Großbuchstaben geschrieben.
Die Abfragesyntax in vielen Teilen an die SQL-Syntax angelehnt. Das macht es einfacher, einfache Where-Klauseln von SQL-Syntax in die Abfragesyntax zu konvertieren.
Detaillierte Informationen zum Thema