Private/Screen/Write-ScreenLog.ps1
function Write-ScreenLog() { param( [Parameter(Mandatory=$true)] [ValidateSet("DEBUG", "INFO", "WARN", "ERROR", "CRIT")] [string]$Level, [Parameter(Mandatory=$true)] [string]$Message ) $logline = Get-LogLine -Level $Level -Message $Message switch ($Level) { "DEBUG" { if ($LogConfig.DLevel -eq "DEBUG") { Write-Host $logline -ForegroundColor $ScreenLogConfig.DebugBackgroundColor -BackgroundColor $ScreenLogConfig.DebugBackgroundColor } } "INFO" { if ($LogConfig.DLevel -eq "DEBUG" -or $LogConfig.DLevel -eq "INFO") { Write-Host $logline -ForegroundColor $ScreenLogConfig.InfoForegroundColor -BackgroundColor $ScreenLogConfig.InfoBackgroundColor } } "WARN" { if ($LogConfig.DLevel -eq "DEBUG" -or $LogConfig.DLevel -eq "INFO" -or $LogConfig.DLevel -eq "WARN") { Write-Host $logline -ForegroundColor $ScreenLogConfig.WarnForegroundColor -BackgroundColor $ScreenLogConfig.WarnBackgroundColor } } "ERROR" { if ($LogConfig.DLevel -eq "DEBUG" -or $LogConfig.DLevel -eq "INFO" -or $LogConfig.DLevel -eq "WARN" -or $LogConfig.DLevel -eq "ERROR") { Write-Host $logline -ForegroundColor $ScreenLogConfig.ErrorForegroundColor -BackgroundColor $ScreenLogConfig.ErrorBackgroundColor } } "CRIT" { if ($LogConfig.DLevel -eq "DEBUG" -or $LogConfig.DLevel -eq "INFO" -or $LogConfig.DLevel -eq "WARN" -or $LogConfig.DLevel -eq "ERROR" -or $LogConfig.DLevel -eq "CRIT") { Write-Host $logline -ForegroundColor $ScreenLogConfig.CritForegroundColor -BackgroundColor $ScreenLogConfig.CritBackgroundColor } } } } |