TrainingUtils.TJR.psm1
<#
.SYNOPSIS Realiza los log del sistema tanto en un archivo logging.log como por pantalla si es requerido. .PARAMETER logType Tipo de error, se utilizan los más comunes: INFO, VERBOSE, WARNING, DEBUG y ERROR. .PARAMETER message Mensaje a utilizar. .PARAMETER logFile Archivo donde se realiza el logeo del script. .NOTES Author: Tomás Rosales For: Máster en DevOps & Cloud Computing IL3 - UB - Módulo 10 #> function Write-TrainingUtilsLog([string]$logType, [string] $message, [string] $logFilePath) { [CmdletBinding()] $stamp = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") $logMessage = "{0} {1}: - {2}" -f $stamp, $logType, $message Save-LogFile -log $logMessage -logFile $logFilePath switch ($logType) { "INFO" { Write-Information $logMessage } "WARNING" { Write-Warning $logMessage } "ERROR" { Write-Error $logMessage -ErrorAction Stop } "DEBUG" { Write-Debug $logMessage } "VERBOSE" { Write-Verbose $logMessage } Default {} } } function Save-LogFile([string]$log, [string] $logFilePath) { try { Add-content $logFilePath -value $log } catch { throw "File does not exists." } } |