Add-LogEntry

EulandaXtools — Funktionsreferenz

Add-LogEntry Intern

ÜBERSICHT

Fügt einen Logeintrag hinzu und aktualisiert einen Logging-Kontext mit Statusinformationen.

SYNTAX

Add-LogEntry [-Message] <string> [[-Level] <string>] [[-Context] <LoggingContext>]
    [<CommonParameters>]

BESCHREIBUNG

Die Funktion 'Add-LogEntry' erstellt strukturierte Logeinträge und aktualisiert automatisch ein bereitgestelltes LoggingContext-Objekt. Dieses Objekt verfolgt den aktuellen Status eines Skript- oder Prozessablaufs, indem Zähler für erfolgreiche, übersprungene oder fehlgeschlagene Operationen aktualisiert werden.

Zusätzlich werden Fehlermeldungen gesammelt und optional in eine Logdatei geschrieben oder technische Ansprechpartner per E-Mail informiert.

Der Logging-Kontext erleichtert so eine systematische Auswertung des Prozessverlaufs.

PARAMETER

-Message

Type: string

Die Lognachricht, die aufgezeichnet und ggf. ausgegeben wird.

-Level

Type: string
Default: "Info"

Das Log-Level der Meldung. Mögliche Werte sind: Info, Warning, Error, Debug, Verbose, Success, Skipped. Standard ist 'Info'.

-Context

Type: LoggingContext

Ein LoggingContext-Objekt, das Informationen wie Zähler für Fehler, Erfolg und Übersprungen, eine Fehlerliste, E-Mail-Adressen sowie den Pfad zur Logdatei enthält.

BEISPIELE

# Fügt eine Erfolgsmeldung hinzu und erhöht den Zähler '$ctx.Successful' im Logging-Kontext. ´LoggingContext` ist im `EulandaXtools.psm1` definiert.

$ctx = [LoggingContext]::new()
$ctx.LogFile = 'C:\logs\prozess.log'
$ctx.TechnicalEmails = @('admin@example.com')

Add-LogEntry -Message "Datei erfolgreich übertragen." -Level Success -Context $ctx
# Fügt eine Meldung hinzu, dass etwas übersprungen wurde und erhöht '$ctx.Skipped'.

Add-LogEntry -Message "Keine Dateien zum Verarbeiten gefunden." -Level Skipped -Context $ctx
# Fügt eine Fehlermeldung hinzu, erhöht '$ctx.Failed', schreibt die Meldung in die Fehlerliste '$ctx.ErrorList' und sendet optional eine Benachrichtigung per E-Mail an die in '$ctx.TechnicalEmails' hinterlegten Empfänger.

Add-LogEntry -Message "Verbindung zum Server fehlgeschlagen." -Level Error -Context $ctx