Write Log
Zuletzt geändert: 14.03.2026 05:56

Write-Log #

ÜBERSICHT #

Schreibt eine Nachricht mit Zeitstempel in eine Logdatei mit automatischer Retry-Logik bei parallelen Schreibzugriffen.

SYNTAX #

Write-Log [[-Message] <string>] [[-LogFile] <string>] [<CommonParameters>]

BESCHREIBUNG #

Die Funktion Write-Log schreibt eine angegebene Nachricht mit einem vorangestellten Zeitstempel im Format yyyy-MM-dd HH:mm:ss in eine Logdatei. Um Konflikte bei parallelen Schreibzugriffen wie z.B. aus mehreren Jobs oder Prozessen, zu reduzieren. Entsprechend enthält die Funktion eine automatische Retry-Logik. Falls die Datei temporär gesperrt ist, versucht die Funktion bis zu 15-mal, die Nachricht erneut zu schreiben, mit einer zufälligen Verzögerung zwischen 50 und 250 Millisekunden zwischen den Versuchen.

Falls alle 15 Versuche fehlschlagen, wird eine Warnung über Write-Warning ausgegeben.

PARAMETER #

-Message #

Type: string

Der Text, der in die Logdatei geschrieben werden soll.

-LogFile #

Type: string

Der vollständige Pfad zur Logdatei.

AUSGABEN #

void

Keinen direkten Rückgabewert. Gibt Verbose-Nachrichten aus, wenn Retrys benötigt wurden, und eine Warnung, falls alle Retrys fehlschlagen.

BEISPIELE #

# Schreibt den Eintrag "2025-06-23 10:20:30 - Prozess erfolgreich gestartet" in die Datei "app.log".
Write-Log -Message "Prozess erfolgreich gestartet" -LogFile "C:\Logs\app.log"
# Schreibt eine Nachricht in das Logfile und gibt zusätzlich die Anzahl der benötigten Retrys bei Konflikten über den Verbose-Stream aus.
Write-Log -Message "Fehler beim Zugriff auf die Datenbank" -LogFile $logPath -Verbose

HINWEISE #

Geeignet für parallele Szenarien, insbesondere in Multi-Job-Umgebungen oder Skripten mit parallelen Prozessen.