# ============================================================================ # Copyright and license info is available in the LICENSE file included with # the Server Deployment Package (SDP), and also available online: # https://swarm.workshop.perforce.com/projects/perforce-software-sdp/view/main/LICENSE # ---------------------------------------------------------------------------- <# .Synopsis rotate-log-fiels.ps1 rotates key log files for service. For use with replicas. .Description Rotates all log files found and zips them. Useful for replicas which may not otherwise have scheduled tasks set. .Parameter sdp-instance The specified SDP instance to verify .Example rotate-log-files.ps1 Master .Example rotate-log-files.ps1 1 #> [CmdletBinding()] param ([string]$SDPInstance = $(throw "SDPInstance parameter is required.")) Set-StrictMode -Version 2.0 # Source the SDP Functions shared between scripts $SDPFunctionsPath = Split-Path -parent $MyInvocation.MyCommand.Path | Join-Path -childpath "SDP-Functions.ps1" . $SDPFunctionsPath $global:ScriptName = "rotate-log-files.ps1" $global:ScriptTask = "Rotate Log Files" $global:LogFileName = "rotate-log-files.log" Parse-SDPConfigFile $MyInvocation.MyCommand.Path Create-LogFile $OrigPath = convert-path . Set-Location -Path $global:LOGS_DIR try { Invoke-P4Login Get-CurrentJournalCounter Rotate-LogFiles Remove-OldLogs Log "End ${global:SDP_INSTANCE_P4SERVICE_NAME} ${global:ScriptTask}" # Don't bother emailing on success Write-Output "`r`n${global:ScriptTask} completed successfully - see ${global:logfile}" } Catch { write-error $error[0].ScriptStackTrace LogException $_.Exception Send-Email "FAILED: ${env:computername} ${global:SDP_INSTANCE_P4SERVICE_NAME} ${global:ScriptTask} log." Write-Output "`r`nFAILED - ${global:ScriptTask} - see ${global:logfile}" } Set-Location -Path $OrigPath
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 23205 | Robert Cowham | Merged all changes from dev to test | ||
//guest/perforce_software/sdp/dev/Server/Windows/p4/common/bin/rotate-log-files.ps1 | |||||
#2 | 22984 | Robert Cowham | Make sure rotate works | ||
#1 | 22922 | Robert Cowham |
Add a utility to rotate log files - good as a scheduled task for replicas who may not have other jobs scheduled. |