Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

## Unreleased

- Changes to xIisLogging
- Moved MSFT_xIisLogging localization strings to strings.psd1 ([issue #464](https://github.com/PowerShell/xWebAdministration/issues/464)).
- Changes to xWebAppPoolDefaults
- Move localization strings to strings.psd1 file ([Issue #470](https://github.com/PowerShell/xWebAdministration/issues/470))
- Changes to xWebAdministration
Expand Down
70 changes: 23 additions & 47 deletions DSCResources/MSFT_xIisLogging/MSFT_xIisLogging.psm1
Original file line number Diff line number Diff line change
Expand Up @@ -4,32 +4,8 @@ $script:localizationModulePath = Join-Path -Path $script:modulesFolderPath -Chil

Import-Module -Name (Join-Path -Path $script:localizationModulePath -ChildPath 'xWebAdministration.Common.psm1')

# Localized messages
data LocalizedData
{
# culture="en-US"
ConvertFrom-StringData -StringData @'
VerboseGetTargetResult = Get-TargetResource has been run.
VerboseSetTargetUpdateLogPath = LogPath is not in the desired state and will be updated.
VerboseSetTargetUpdateLogFlags = LogFlags do not match and will be updated.
VerboseSetTargetUpdateLogPeriod = LogPeriod is not in the desired state and will be updated.
VerboseSetTargetUpdateLogTruncateSize = TruncateSize is not in the desired state and will be updated.
VerboseSetTargetUpdateLoglocalTimeRollover = LoglocalTimeRollover is not in the desired state and will be updated.
VerboseSetTargetUpdateLogFormat = LogFormat is not in the desired state and will be updated
VerboseSetTargetUpdateLogTargetW3C = LogTargetW3C is not in the desired state and will be updated
VerboseSetTargetUpdateLogCustomFields = LogCustomFields is not in the desired state and will be updated.
VerboseTestTargetUpdateLogCustomFields = LogCustomFields is not in the desired state and will be updated.
VerboseTestTargetFalseLogPath = LogPath does match desired state.
VerboseTestTargetFalseLogFlags = LogFlags does not match desired state.
VerboseTestTargetFalseLogPeriod = LogPeriod does not match desired state.
VerboseTestTargetFalseLogTruncateSize = LogTruncateSize does not match desired state.
VerboseTestTargetFalseLoglocalTimeRollover = LoglocalTimeRollover does not match desired state.
VerboseTestTargetFalseLogFormat = LogFormat does not match desired state.
VerboseTestTargetFalseLogTargetW3C = LogTargetW3C does not match desired state.
WarningLogPeriod = LogTruncateSize has is an input as will overwrite this desired state.
WarningIncorrectLogFormat = LogFormat is not W3C, as a result LogFlags will not be used.
'@
}
# Import Localization Strings
$script:localizedData = Get-LocalizedData -ResourceName 'MSFT_xIisLogging'

<#
.SYNOPSIS
Expand All @@ -50,7 +26,7 @@ function Get-TargetResource
$currentLogSettings = Get-WebConfiguration `
-filter '/system.applicationHost/sites/siteDefaults/Logfile'

Write-Verbose -Message ($LocalizedData.VerboseGetTargetResult)
Write-Verbose -Message ($script:localizedData.VerboseGetTargetResult)

$cimLogCustomFields = @(ConvertTo-CimLogCustomFields -InputObject $currentLogSettings.logFile.customFields.Collection)

Expand Down Expand Up @@ -152,7 +128,7 @@ function Set-TargetResource
if ($PSBoundParameters.ContainsKey('LogFormat') -and `
($LogFormat -ne $currentLogState.LogFormat))
{
Write-Verbose -Message ($LocalizedData.VerboseSetTargetUpdateLogFormat)
Write-Verbose -Message ($script:localizedData.VerboseSetTargetUpdateLogFormat)
Set-WebConfigurationProperty '/system.applicationHost/sites/siteDefaults/logfile' `
-Name logFormat `
-Value $LogFormat
Expand All @@ -161,7 +137,7 @@ function Set-TargetResource
# Update LogPath if needed
if ($PSBoundParameters.ContainsKey('LogPath') -and ($LogPath -ne $currentLogState.LogPath))
{
Write-Verbose -Message ($LocalizedData.VerboseSetTargetUpdateLogPath)
Write-Verbose -Message ($script:localizedData.VerboseSetTargetUpdateLogPath)
Set-WebConfigurationProperty '/system.applicationHost/sites/siteDefaults/logfile' `
-Name directory `
-Value $LogPath
Expand All @@ -171,7 +147,7 @@ function Set-TargetResource
if ($PSBoundParameters.ContainsKey('LogFlags') -and `
(-not (Compare-LogFlags -LogFlags $LogFlags)))
{
Write-Verbose -Message ($LocalizedData.VerboseSetTargetUpdateLogFlags)
Write-Verbose -Message ($script:localizedData.VerboseSetTargetUpdateLogFlags)
Set-WebConfigurationProperty '/system.Applicationhost/Sites/SiteDefaults/logfile' `
-Name logFormat `
-Value 'W3C'
Expand All @@ -186,9 +162,9 @@ function Set-TargetResource
{
if ($PSBoundParameters.ContainsKey('LogTruncateSize'))
{
Write-Verbose -Message ($LocalizedData.WarningLogPeriod)
Write-Verbose -Message ($script:localizedData.WarningLogPeriod)
}
Write-Verbose -Message ($LocalizedData.VerboseSetTargetUpdateLogPeriod)
Write-Verbose -Message ($script:localizedData.VerboseSetTargetUpdateLogPeriod)
Set-WebConfigurationProperty '/system.Applicationhost/Sites/SiteDefaults/logfile' `
-Name period `
-Value $LogPeriod
Expand All @@ -198,7 +174,7 @@ function Set-TargetResource
if ($PSBoundParameters.ContainsKey('LogTruncateSize') -and `
($LogTruncateSize -ne $currentLogState.LogTruncateSize))
{
Write-Verbose -Message ($LocalizedData.VerboseSetTargetUpdateLogTruncateSize)
Write-Verbose -Message ($script:localizedData.VerboseSetTargetUpdateLogTruncateSize)
Set-WebConfigurationProperty '/system.Applicationhost/Sites/SiteDefaults/logfile' `
-Name truncateSize `
-Value $LogTruncateSize
Expand All @@ -212,7 +188,7 @@ function Set-TargetResource
($LoglocalTimeRollover -ne `
([System.Convert]::ToBoolean($currentLogState.LoglocalTimeRollover))))
{
Write-Verbose -Message ($LocalizedData.VerboseSetTargetUpdateLoglocalTimeRollover)
Write-Verbose -Message ($script:localizedData.VerboseSetTargetUpdateLoglocalTimeRollover)
Set-WebConfigurationProperty '/system.Applicationhost/Sites/SiteDefaults/logfile' `
-Name localTimeRollover `
-Value $LoglocalTimeRollover
Expand All @@ -222,7 +198,7 @@ function Set-TargetResource
if ($PSBoundParameters.ContainsKey('LogTargetW3C') -and `
($LogTargetW3C -ne $currentLogState.LogTargetW3C))
{
Write-Verbose -Message ($LocalizedData.VerboseSetTargetUpdateLogTargetW3C)
Write-Verbose -Message ($script:localizedData.VerboseSetTargetUpdateLogTargetW3C)
Set-WebConfigurationProperty '/system.applicationHost/sites/siteDefaults/logfile' `
-Name logTargetW3C `
-Value $LogTargetW3C
Expand All @@ -232,7 +208,7 @@ function Set-TargetResource
if ($PSBoundParameters.ContainsKey('LogCustomFields') -and `
(-not (Test-LogCustomField -LogCustomField $LogCustomFields)))
{
Write-Verbose -Message ($LocalizedData.VerboseSetTargetUpdateLogCustomFields)
Write-Verbose -Message ($script:localizedData.VerboseSetTargetUpdateLogCustomFields)

Set-LogCustomField -LogCustomField $LogCustomFields
}
Expand Down Expand Up @@ -323,20 +299,20 @@ function Test-TargetResource
if ($PSBoundParameters.ContainsKey('LogFlags') -and `
$LogFormat -ne 'W3C')
{
Write-Verbose -Message ($LocalizedData.WarningIncorrectLogFormat)
Write-Verbose -Message ($script:localizedData.WarningIncorrectLogFormat)
}

# Warn if LogFlags are passed in and Desired LogFormat is not W3C
if ($PSBoundParameters.ContainsKey('LogFlags') -and `
$currentLogState.LogFormat -ne 'W3C')
{
Write-Verbose -Message ($LocalizedData.WarningIncorrectLogFormat)
Write-Verbose -Message ($script:localizedData.WarningIncorrectLogFormat)
}

# Check LogFormat
if ($LogFormat -ne $currentLogState.LogFormat)
{
Write-Verbose -Message ($LocalizedData.VerboseTestTargetFalseLogFormat)
Write-Verbose -Message ($script:localizedData.VerboseTestTargetFalseLogFormat)
return $false
}
}
Expand All @@ -345,15 +321,15 @@ function Test-TargetResource
if ($PSBoundParameters.ContainsKey('LogFlags') -and `
(-not (Compare-LogFlags -LogFlags $LogFlags)))
{
Write-Verbose -Message ($LocalizedData.VerboseTestTargetFalseLogFlags)
Write-Verbose -Message ($script:localizedData.VerboseTestTargetFalseLogFlags)
return $false
}

# Check LogPath
if ($PSBoundParameters.ContainsKey('LogPath') -and `
($LogPath -ne $currentLogState.LogPath))
{
Write-Verbose -Message ($LocalizedData.VerboseTestTargetFalseLogPath)
Write-Verbose -Message ($script:localizedData.VerboseTestTargetFalseLogPath)
return $false
}

Expand All @@ -363,18 +339,18 @@ function Test-TargetResource
{
if ($PSBoundParameters.ContainsKey('LogTruncateSize'))
{
Write-Verbose -Message ($LocalizedData.WarningLogPeriod)
Write-Verbose -Message ($script:localizedData.WarningLogPeriod)
}

Write-Verbose -Message ($LocalizedData.VerboseTestTargetFalseLogPeriod)
Write-Verbose -Message ($script:localizedData.VerboseTestTargetFalseLogPeriod)
return $false
}

# Check LogTruncateSize
if ($PSBoundParameters.ContainsKey('LogTruncateSize') -and `
($LogTruncateSize -ne $currentLogState.LogTruncateSize))
{
Write-Verbose -Message ($LocalizedData.VerboseTestTargetFalseLogTruncateSize)
Write-Verbose -Message ($script:localizedData.VerboseTestTargetFalseLogTruncateSize)
return $false
}

Expand All @@ -383,23 +359,23 @@ function Test-TargetResource
($LoglocalTimeRollover -ne `
([System.Convert]::ToBoolean($currentLogState.LoglocalTimeRollover))))
{
Write-Verbose -Message ($LocalizedData.VerboseTestTargetFalseLoglocalTimeRollover)
Write-Verbose -Message ($script:localizedData.VerboseTestTargetFalseLoglocalTimeRollover)
return $false
}

# Check LogTargetW3C
if ($PSBoundParameters.ContainsKey('LogTargetW3C') -and `
($LogTargetW3C -ne $currentLogState.LogTargetW3C))
{
Write-Verbose -Message ($LocalizedData.VerboseTestTargetFalseLogTargetW3C)
Write-Verbose -Message ($script:localizedData.VerboseTestTargetFalseLogTargetW3C)
return $false
}

# Check LogCustomFields if neeed
if ($PSBoundParameters.ContainsKey('LogCustomFields') -and `
(-not (Test-LogCustomField -LogCustomFields $LogCustomFields)))
{
Write-Verbose -Message ($LocalizedData.VerboseTestTargetUpdateLogCustomFields)
Write-Verbose -Message ($script:localizedData.VerboseTestTargetUpdateLogCustomFields)
return $false
}

Expand Down
21 changes: 21 additions & 0 deletions DSCResources/MSFT_xIisLogging/en-US/MSFT_xIisLogging.strings.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
ConvertFrom-StringData @'
VerboseGetTargetResult = Get-TargetResource has been run.
VerboseSetTargetUpdateLogPath = LogPath is not in the desired state and will be updated.
VerboseSetTargetUpdateLogFlags = LogFlags do not match and will be updated.
VerboseSetTargetUpdateLogPeriod = LogPeriod is not in the desired state and will be updated.
VerboseSetTargetUpdateLogTruncateSize = TruncateSize is not in the desired state and will be updated.
VerboseSetTargetUpdateLoglocalTimeRollover = LoglocalTimeRollover is not in the desired state and will be updated.
VerboseSetTargetUpdateLogFormat = LogFormat is not in the desired state and will be updated
VerboseSetTargetUpdateLogTargetW3C = LogTargetW3C is not in the desired state and will be updated
VerboseSetTargetUpdateLogCustomFields = LogCustomFields is not in the desired state and will be updated.
VerboseTestTargetUpdateLogCustomFields = LogCustomFields is not in the desired state and will be updated.
VerboseTestTargetFalseLogPath = LogPath does match desired state.
VerboseTestTargetFalseLogFlags = LogFlags does not match desired state.
VerboseTestTargetFalseLogPeriod = LogPeriod does not match desired state.
VerboseTestTargetFalseLogTruncateSize = LogTruncateSize does not match desired state.
VerboseTestTargetFalseLoglocalTimeRollover = LoglocalTimeRollover does not match desired state.
VerboseTestTargetFalseLogFormat = LogFormat does not match desired state.
VerboseTestTargetFalseLogTargetW3C = LogTargetW3C does not match desired state.
WarningLogPeriod = LogTruncateSize has is an input as will overwrite this desired state.
WarningIncorrectLogFormat = LogFormat is not W3C, as a result LogFlags will not be used.
'@