Made format function more flexible

This commit is contained in:
KevinMarquette
2017-02-07 01:33:23 -08:00
parent 361be0876f
commit aa2b1f7854

View File

@@ -18,33 +18,43 @@ function Format-Chronometer
[MonitoredScript[]] [MonitoredScript[]]
$InputObject, $InputObject,
# This is a ScriptLine object from a MonitoredScript object
[Parameter(
ValueFromPipeline=$true
)]
[ScriptLine[]]
$Line,
# If the average time of a command is more than this, the output is yellow # If the average time of a command is more than this, the output is yellow
[int] [int]
$WarningAt = 20, $WarningAt = 20,
#If the average time of a comamand is more than this, the output is red #If the average time of a comamand is more than this, the output is red
[int] [int]
$ErrorAt = 200 $ErrorAt = 200,
# Forces the report to show scripts with no execution time
[switch]
$ShowAll
) )
begin {
$green = @{ForgroundColor='green'}
$grey = @{ForgroundColor='grey'}
$yellow = @{ForgroundColor='grey'}
$yellow = @{ForgroundColor='grey'}
$yellow = @{ForgroundColor='grey'}
}
process process
{ {
foreach($script in $InputObject) foreach($script in $InputObject)
{
if($script.ExecutionTime -ne [TimeSpan]::Zero -or $ShowAll)
{ {
Write-Host '' Write-Host ''
Write-Host "Script: $($script.Path)" -ForegroundColor Green Write-Host "Script: $($script.Path)" -ForegroundColor Green
Write-Host "Execution Time: $($script.ExecutionTime)" -ForegroundColor Green Write-Host "Execution Time: $($script.ExecutionTime)" -ForegroundColor Green
foreach($line in $script.line)
$script.line | Format-Chronometer -WarningAt $WarningAt -ErrorAt $ErrorAt
}
}
foreach($command in $Line)
{ {
Write-ScriptLine $line -WarningAt $WarningAt -ErrorAt $ErrorAt Write-ScriptLine $line -WarningAt $WarningAt -ErrorAt $ErrorAt
} }
} }
}
} }