Write-Log

EulandaXtools — Funktionsreferenz

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.