Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht

Navigation: Dokumentationen agorum core > Übersicht tags


Grundlagen von JavaScript in agorum core

Diese Dokumentation enthält allgemeine Hintergrundinformationen zur Verwendung von JavaScript in agorum core.

Hinweis: In agorum core wird JavaScript in einer serverseitigen Umgebung ausgeführt. Dadurch unterscheidet sich die verfügbare JavaScript-Syntax teilweise von der Syntax, die in Browsern/Node.js zum Einsatz kommt. Verwenden Sie in agorum core nur Konstrukte, die in der agorum core Dokumentation beschrieben sind bzw. in agorum core Beispielen verwendet werden.

JavaScript in agorum core

agorum core führt JavaScript in der Regel serverseitig aus. Das hat etwa folgende Auswirkungen:

Aufbau eines Skripts (Einsteiger)

Ein typisches agorum core Skript folgt einer klaren Struktur:

  1. Benötigte Bibliotheken am Anfang des Skripts laden (require).
  2. Funktionen definieren (möglichst klein und gut benannt).
  3. Hauptlogik ausführen und Fehler behandeln.

Objekt‑ID (Objekte eindeutig referenzieren)

In der agorum core JavaScript API müssen Objekte häufig über eine Kennung referenziert werden (z. B. beim Laden, Verknüpfen, Verschieben oder beim Zugriff auf Inhalte/Metadaten).
In dieser Dokumentation verwenden wir dafür den Begriff Objekt‑ID als Sammelbegriff für alle von agorum core akzeptierten Objektkennungen.

Formate einer Objekt-ID

Typische Formate einer Objekt‑ID sind:

Debugging & Logging

Für produktive, nachvollziehbare Protokollierung (z. B. mit Severity-Level, Details, Sticky-Einträgen) sollten Sie das strukturierte Logging über agorum.dev/js/lib/logger verwenden. Für die schnelle Diagnose während der Entwicklung können Sie zudem Ausgaben über console.* erzeugen. Die Log-Ausgaben erscheinen in den System-Logs (Support Tool) sowie, je nach Kontext, in der Skript-Konsole, in der Browser-Konsole oder im Workflow-Protokoll.

Debug-Ausgaben mit console

Verwenden Sie console, um während der Ausführung Werte und Statusinformationen auszugeben (z. B. beim Debugging, bei der Entwicklung oder zur Nachvollziehbarkeit von Skriptabläufen).

Die folgenden Funktionen stehen zur Verfügung:

Funktion Verwendung (kurz)
console.debug() Detaillierte Debug-Ausgaben für Diagnosezwecke (z. B. Zwischenschritte, interne Zustände). Das Debugging muss dafür zunächst im Support Tool durch Setzen des Log-Levels Debug unter Base System > Sub Statistics > Engine Factory aktiviert werden, siehe Schaltflächen im Log.
console.info() Allgemeine Status-/Info-Meldungen (z. B. „Import gestartet“, „Verarbeitung abgeschlossen“).
console.log() Standardausgabe für Debugging/Entwicklung (allgemeine Ausgaben ohne spezielles Level).
console.warn() Warnungen bei unerwarteten, aber nicht unbedingt fatalen Situationen (z. B. fehlende optionale Daten, Fallback wird genutzt).
console.error() Fehlerausgaben für fehlgeschlagene Operationen (z. B. Exception im catch).
console.assert(condition, ) Prüft eine Bedingung und loggt nur, wenn sie false ist (hilfreich für Annahmen/Invariant-Prüfungen).
console.trace() Gibt zusätzlich einen Stacktrace aus (hilfreich, um Aufrufketten zu verstehen).
console.clear() Leert die Ausgabe 


Beispielverwendung

console.debug('test debug');
console.info('test info');
console.log('test log');
console.warn('test warn');
console.error('test error');
console.assert(false, 'test assert');
console.trace('test trace');
// console.clear();

console;

//returns:
/*
{
  "warn" : { },
  "trace" : { },
  "debug" : { },
  "log" : { },
  "assert" : { },
  "_aguila" : true,
  "clear" : { },
  "error" : { },
  "info" : { }
}
*/

Achtung: Verwenden Sie console.* nicht für produktives, dauerhaftes Logging. Nutzen Sie für nachvollziehbare Protokollierung stattdessen die Logging-Funktionen von agorum core. 

Produktives Logging

Für produktive Systeme (Monitoring, Auditing, Troubleshooting) sollten Sie nicht auf Browser-Ausgaben setzen, sondern ein strukturiertes Logging verwenden. agorum core stellt dafür eine eigene Bibliothek bereit: agorum.dev/js/lib/logger