LOG
Der LOG-Service (RagLoggerService) bietet umfangreiche Logging- und Performance-Messfunktionen. Damit kannst du die Ausführungszeiten von Prompts, Hooks und einzelnen Verarbeitungsschritten messen und als Timing-Graphen visualisieren.
.enable(collapsed?)
Aktiviert das Logging für den aktuellen Bot. Log-Ausgaben erscheinen in der Browser-Konsole.
| Parameter | Typ | Pflicht | Beschreibung |
|---|---|---|---|
collapsed | boolean | nein | Wenn true (Standard), werden Log-Gruppen eingeklappt angezeigt. |
// Logging aktivieren (eingeklappt)
RAGAI.LOG.enable();
// Logging aktivieren (ausgeklappt)
RAGAI.LOG.enable(false);
.disable()
Deaktiviert das Logging für den aktuellen Bot.
RAGAI.LOG.disable();
.filter(filter?)
Filtert die Log-Ausgaben nach einem bestimmten Begriff. Nur Log-Einträge, die den Filter-String enthalten, werden angezeigt.
| Parameter | Typ | Pflicht | Beschreibung |
|---|---|---|---|
filter | string | nein | Der Filter-String. Ohne Angabe wird der Filter zurückgesetzt. |
// Nur Logs filtern, die "webhook" enthalten
RAGAI.LOG.filter('webhook');
// Filter zurücksetzen
RAGAI.LOG.filter();
.measureRunStart(prompt)
Startet eine Zeitmessung für einen Prompt-Durchlauf. Verwende diese Methode am Anfang einer Verarbeitungskette.
| Parameter | Typ | Beschreibung |
|---|---|---|
prompt | string | Beschreibung des Prompts, der gemessen wird. |
RAGAI.LOG.measureRunStart('Benutzeranfrage verarbeiten');
.measureHook(hookName, params)
Misst die Ausführungszeit eines bestimmten Hooks und protokolliert die übergebenen Parameter.
| Parameter | Typ | Beschreibung |
|---|---|---|
hookName | string | Der Name des Hooks. |
params | unknown | Die Parameter, die an den Hook übergeben werden. |
RAGAI.LOG.measureHook('meinHook', { key: 'value' });
.measureRunStep(stepName, direction?, executionDuration?)
Protokolliert einen einzelnen Verarbeitungsschritt innerhalb eines Prompt-Durchlaufs.
| Parameter | Typ | Pflicht | Beschreibung |
|---|---|---|---|
stepName | string | ja | Name des Verarbeitungsschritts. |
direction | "in" | "out" | "" | nein | Richtung des Schritts: "in" für eingehend, "out" für ausgehend, "" für neutral. |
executionDuration | number | nein | Die Ausführungsdauer in Millisekunden. |
RAGAI.LOG.measureRunStep('Dokumente abrufen', 'in', 350);
RAGAI.LOG.measureRunStep('Antwort generieren', 'out', 1200);
.logTimingGraph(duration)
Erzeugt eine grafische Darstellung der Zeitmessung in der Konsole auf Basis der verbrauchten Zeit.
| Parameter | Typ | Beschreibung |
|---|---|---|
duration | number | Die Dauer in Millisekunden. |
RAGAI.LOG.logTimingGraph(1500);
.measureRunStop()
Stoppt die mit measureRunStart() gestartete Zeitmessung und gibt eine zusammenfassende Log-Ausgabe mit allen gemessenen Schritten aus.
RAGAI.LOG.measureRunStop();
Vollständiges Beispiel
RAGAI.LOG.enable();
RAGAI.LOG.measureRunStart('Kompletter Durchlauf');
RAGAI.LOG.measureRunStep('Eingabe verarbeiten', 'in', 50);
RAGAI.LOG.measureHook('beforeSend', { message: 'Hallo' });
RAGAI.LOG.measureRunStep('KI-Anfrage', 'out', 800);
RAGAI.LOG.measureRunStep('Antwort rendern', 'in', 120);
RAGAI.LOG.measureRunStop();