Debugger
1. Was ist Workcube Debugger?
Workcube Debugger ist ein erweitertes Code- und Abfrageanalysetool, das in der Workcube-Architektur (unter DEV / Dev Tools / WorkDev) enthalten ist und Anwendungsentwicklern und Systemadministratoren angeboten wird. Es überwacht Seitenanfragen, AJAX-Aufrufe, Vorlagenlaufzeiten und Datenbank-SQL-Abfragen, die in der ColdFusion-Infrastruktur in Echtzeit ausgeführt werden.
Das Debug-Tool, das über das Bedienfeld in der Workcube-Architektur ein- und ausgeschaltet werden kann; Es bietet einen zentralen Kontrollmechanismus zur Erkennung von Leistungsengpässen, Datenbankverlangsamungen und Fehlern, die in Workcube-Modulen auftreten.
2. Die Bedeutung von Debug für ein Unternehmen
Das einwandfreie Funktionieren der Software- und Systemarchitektur ist entscheidend für die unterbrechungsfreie Fortführung der ERP-Prozesse im Unternehmen. Die Hauptvorteile, die das Workcube-Debug-Modul bietet, sind folgende:
- Leistungsoptimierung: Es erkennt langsame SQL-Abfragen und träge CFM-Vorlagen, die die Seitenladezeiten auf Millisekundenebene (ms) erhöhen.
- Schnelle Fehlerbehebung: Es minimiert Unterbrechungen im Live-System, indem es fehlerhafte Datenbankoperationen und logische Fehler sofort erkennt. Downloads.
- Codequalität und Rückverfolgbarkeit: Es speichert die ausgeführten Codedateien in einem regulären Anforderungspool (History Pool) und bietet direkten Zugriff auf den Code im Zusammenhang mit der Monaco Editor-Integration.
- Sicherheits- und Autorisierungskontrolle: Sensible Systemdaten mit strengen Sicherheitsautorisierungsstufen (Modulautorität 42, Admin- oder Root-Autorität), die verhindern, dass unbefugte Benutzer auf Debug-Daten zugreifen. schützt.
3. Prozessablauf/Lebenszyklus in Workcube
Die Ausführungs- und Überwachungsschritte des Workcube-Debug-Mechanismus sind wie folgt:
Stufe | Modul/Dokument/ Objekt | Beschreibung |
|---|---|---|
1. Debug aktivieren | Rechtes Bedienfeld (rightBarObjects.cfm) | Ein Entwickler oder Benutzer mit Administratorrechten aktiviert den Debug-Modus über das rechte Bedienfeld. |
2. Anforderungserfassung und -pooling | Sitzung (workcube_debug_history) | Während der Benutzer Vorgänge auf der Site ausführt (AJAX oder Hauptanforderung), werden die letzten 15 gestellten Anforderungen mit einem speziellen Filtermechanismus gespeichert. |
3. Autoritäts- und Sicherheitsüberprüfung | dsp_debug_output.cfm | Es wird überprüft, ob der zugreifende Benutzer über Benutzerebene 42, is_admin-Berechtigung oder Root (Benutzer-ID=1) verfügt; andernfalls wird der Zugriff verweigert. |
4. Vorlagenanalyse (Registerkarte „Vorlagen“) | Dev Tools / Monaco Editor | Die auf der Seite aufgerufenen CFM-Vorlagendateien werden aufgelistet, ihre Laufzeiten werden analysiert und auf Wunsch kann direkt mit Monaco Editor auf den Code zugegriffen werden. |
5. SQL- und Metrikanalyse (Registerkarte „Abfragen und Timer“) | Workcube-Debugger-Schnittstelle | Ausgeführte SQL-Abfragen, Anzahl der zurückgegebenen Datensätze und Gesamtausführungszeiten werden grafisch/tabellarisch untersucht Metriken. |
4. Was ist bei der Verwaltung von Debug-Vorgängen zu beachten?
A. Autorisierung und Live-Umgebungssicherheit
Das Debug-Modul stellt ein Sicherheitsrisiko für sensible Daten dar, da es Datenbankabfragen und Datenstrukturen klar offenlegen kann. Benutzerbasierte Modul 42-Berechtigungs- und Admin-Kontrollen müssen aktiv bleiben, um unbefugten Zugriff zu verhindern.
Workcube-Tipp: Die Debug-Schnittstelle ermöglicht nur den Zugriff für Personen mit der Berechtigungsnummer 42 in der session.ep.user_level-Liste, Unternehmensadministratoren (is_admin eq 1) oder den Hauptbenutzer (userid eq 1). Die Berechtigung für Modul 42 sollte niemals allgemeinen Benutzern in einer Live-Umgebung gewährt werden.
B. Debug-Nutzungszeit im Live-System
Das kontinuierliche Aktivieren des Debug-Modus kann zu einer Speicherbelastung der Sitzung führen. Obwohl der Anfragepool standardmäßig auf die letzten 15 Anfragen beschränkt ist, wird empfohlen, ihn nach Abschluss des Vorgangs zu schließen.
C. Überprüfung von SQL-Abfragen und Leistungsmetriken
Abfragen mit hoher Ausführungszeit (ms) auf der Registerkarte „Abfragen“ weisen auf fehlende Datenbankindizes oder falsche JOIN-Strukturen hin. Das Verhältnis zwischen der Anzahl der zurückgegebenen Datensätze und der aufgewendeten Zeit muss analysiert werden.
D. Integration von Monaco-Editor und Code-Direktzugriff
Dank der Monaco-Schaltfläche neben den Dateipfaden im Tab „Vorlagen“ kann erkannter langsamer Code sofort in die Entwicklungsumgebung eingegriffen werden.
Workcube-Tipp: Dank der dev.monaco-Integration in der Vorlagenliste auf dem Debug-Bildschirm wird der Code direkt im Editor-Bildschirm geöffnet, wenn auf die Monaco-Schaltfläche im entsprechenden Dateipfad geklickt wird. Auf diese Weise können Sie den Fehler an der Quelle beheben, ohne das Dateiverzeichnis durchsuchen zu müssen.