diff --git a/Deployment/WindowsPowerShell/Modules/CoreFunctions/include/Logger.ps1 b/Deployment/WindowsPowerShell/Modules/CoreFunctions/include/Logger.ps1 index e04db7b..9bcb6b7 100644 --- a/Deployment/WindowsPowerShell/Modules/CoreFunctions/include/Logger.ps1 +++ b/Deployment/WindowsPowerShell/Modules/CoreFunctions/include/Logger.ps1 @@ -24,115 +24,113 @@ [log4net.Config.XmlConfigurator]::Configure($Log4NetConfig) - $__Logger.info("Logger initialized. Log file: '$LogPath'") + $__Logger.info("Logger initialized. Log file: '$LogPath'`n") } - -Function Write-LogInfo { - param ( - [String[]] $Text - ) - foreach ($Line in $Text) { - $__Logger.info($Line) - } -} -New-Alias -Name Write-Log -Value Write-LogInfo - - - Function Out-LogInfo { - param ( - [Parameter(ValueFromPipeline=$true)] - [String] $Text - ) - $__Logger.info($Text) -} -New-Alias -Name Out-Log -Value Out-LogInfo - - - -Function Write-LogWarning { - param ( - [String] $Text - ) - foreach ($Line in $Text) { - $__Logger.warn($Line) + param ( + [Parameter(ValueFromPipeline=$true)] + $InputObject, + [Switch] $EntireObject + ) + process { + if ($EntireObject) { + $__Logger.info("`n$(Out-String -InputObject $InputObject)") + } + else { + foreach ($Object in $InputObject) { + $__Logger.info((Out-String -InputObject $Object)) + } + } } } +New-Alias -Name Out-Log -Value Out-LogInfo +New-Alias -Name Write-Log -Value Out-LogInfo Function Out-LogWarning { - param ( - [Parameter(ValueFromPipeline=$true)] - [String] $Text - ) - $__Logger__.warn($Text) -} - - - -Function Write-LogError { - param ( - [String] $Text - ) - foreach ($Line in $Text) { - $__Logger.error($Line) + param ( + [Parameter(ValueFromPipeline=$true)] + $InputObject, + [Switch] $EntireObject + ) + process { + if ($EntireObject) { + $__Logger.warn("`n$(Out-String -InputObject $InputObject)") + } + else { + foreach ($Object in $InputObject) { + $__Logger.warn((Out-String -InputObject $Object)) + } + } } } +New-Alias -Name Write-LogWarning -Value Out-LogWarning Function Out-LogError { - param ( - [Parameter(ValueFromPipeline=$true)] - [String] $Text - ) - $__Logger.error($Text) -} - - - -Function Write-LogFatal { - param ( - [String] $Text - ) - foreach ($Line in $Text) { - $__Logger.fatal($Line) + param ( + [Parameter(ValueFromPipeline=$true)] + $InputObject, + [Switch] $EntireObject + ) + process { + if ($EntireObject) { + $__Logger.error("`n$(Out-String -InputObject $InputObject)") + } + else { + foreach ($Object in $InputObject) { + $__Logger.error((Out-String -InputObject $Object)) + } + } } } +New-Alias -Name Write-LogError -Value Out-LogError Function Out-LogFatal { - param ( - [Parameter(ValueFromPipeline=$true)] - [String] $Text - ) - $__Logger.fatal($Text) -} - - - -Function Write-LogDebug { - param ( - [String] $Text - ) - foreach ($Line in $Text) { - $__Logger.debug($Line) + param ( + [Parameter(ValueFromPipeline=$true)] + $InputObject, + [Switch] $EntireObject + ) + process { + if ($EntireObject) { + $__Logger.fatal("`n$(Out-String -InputObject $InputObject)") + } + else { + foreach ($Object in $InputObject) { + $__Logger.fatal((Out-String -InputObject $Object)) + } + } } } +New-Alias -Name Write-LogFatal -Value Out-LogFatal Function Out-LogDebug { - param ( - [Parameter(ValueFromPipeline=$true)] - [String] $Text - ) - $__Logger.debug($Text) + param ( + [Parameter(ValueFromPipeline=$true)] + $InputObject, + [Switch] $EntireObject + ) + process { + if ($EntireObject) { + $__Logger.debug("`n$(Out-String -InputObject $InputObject)") + } + else { + foreach ($Object in $InputObject) { + $__Logger.debug((Out-String -InputObject $Object)) + } + } + } } +New-Alias -Name Write-LogDebug -Value Out-LogDebug diff --git a/Deployment/WindowsPowerShell/Modules/CoreFunctions/log4net.config b/Deployment/WindowsPowerShell/Modules/CoreFunctions/log4net.config index ea7aa0e..1b0b20b 100644 --- a/Deployment/WindowsPowerShell/Modules/CoreFunctions/log4net.config +++ b/Deployment/WindowsPowerShell/Modules/CoreFunctions/log4net.config @@ -1,42 +1,42 @@ <log4net> - <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender" > - <param name="File" type="log4net.Util.PatternString" value="%property{LogPath}" /> - <param name="AppendToFile" value="true" /> - <param name="RollingStyle" value="Size" /> - <param name="MaxSizeRollBackups" value="100" /> - <param name="MaximumFileSize" value="1024KB" /> - <param name="StaticLogFileName" value="true" /> - <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> - <layout type="log4net.Layout.PatternLayout"> - <param name="ConversionPattern" value="%date [%-5level] [%property{ModuleName}] %message%newline" /> - </layout> - </appender> + <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender" > + <param name="File" type="log4net.Util.PatternString" value="%property{LogPath}" /> + <param name="AppendToFile" value="true" /> + <param name="RollingStyle" value="Size" /> + <param name="MaxSizeRollBackups" value="100" /> + <param name="MaximumFileSize" value="1024KB" /> + <param name="StaticLogFileName" value="true" /> + <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> + <layout type="log4net.Layout.PatternLayout"> + <param name="ConversionPattern" value="%date [%-5level] [%property{ModuleName}] %message" /> + </layout> + </appender> - <appender name="ColoredConsoleAppender" type="log4net.Appender.ColoredConsoleAppender"> - <mapping> - <level value="error" /> - <foreColor value="Red, HighIntensity" /> - </mapping> - <mapping> - <level value="warn" /> - <foreColor value="Yellow, HighIntensity" /> - </mapping> - <mapping> - <level value="info" /> - <foreColor value="Green, HighIntensity" /> - </mapping> - <layout type="log4net.Layout.PatternLayout"> - <conversionPattern value="%date [%-5level] [%property{ModuleName}] %message%newline" /> - </layout> - </appender> + <appender name="ColoredConsoleAppender" type="log4net.Appender.ColoredConsoleAppender"> + <mapping> + <level value="error" /> + <foreColor value="Red, HighIntensity" /> + </mapping> + <mapping> + <level value="warn" /> + <foreColor value="Yellow, HighIntensity" /> + </mapping> + <mapping> + <level value="info" /> + <foreColor value="Green, HighIntensity" /> + </mapping> + <layout type="log4net.Layout.PatternLayout"> + <conversionPattern value="%date [%-5level] [%property{ModuleName}] %message" /> + </layout> + </appender> - <!--root> - <level value="info" /> - </root--> + <!--root> + <level value="info" /> + </root--> - <logger name="PowerShell" additivity="false"> - <!--level value="info" /--> - <appender-ref ref="ColoredConsoleAppender" /> + <logger name="PowerShell" additivity="false"> + <!--level value="info" /--> + <appender-ref ref="ColoredConsoleAppender" /> <appender-ref ref="RollingFileAppender" /> - </logger> + </logger> </log4net> \ No newline at end of file