Private/Write-Log.ps1
|
function Write-Log { <# .SYNOPSIS Writes a log message with timestamp and level. #> param( [string]$Message, [ValidateSet("INFO", "SUCCESS", "WARNING", "ERROR", "DEBUG")] [string]$Level = "INFO" ) $timestamp = Get-Date -Format "yyyy-MM-dd HH:mm:ss" $color = switch ($Level) { "INFO" { "White" } "SUCCESS" { "Green" } "WARNING" { "Yellow" } "ERROR" { "Red" } "DEBUG" { "Gray" } } Write-Host "[$timestamp] [$Level] $Message" -ForegroundColor $color } function Write-LogSuccess { param([string]$Message) Write-Log $Message "SUCCESS" } function Write-LogWarning { param([string]$Message) Write-Log $Message "WARNING" } function Write-LogError { param([string]$Message) Write-Log $Message "ERROR" } function Write-LogDebug { param([string]$Message) Write-Log $Message "DEBUG" } |