# ============================================================================
# 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 | |
|---|---|---|---|---|---|
| #3 | 27331 | C. Thomas Tyler |
Released SDP 2020.1.27325 (2021/01/29). Copy Up using 'p4 copy -r -b perforce_software-sdp-dev'. |
||
| #2 | 23006 | C. Thomas Tyler |
Released SDP 2017.3.23003 (2017/10/19). Copy Up using 'p4 copy -r -b perforce_software-sdp-dev'. |
||
| #1 | 22931 | Robert Cowham |
Updated docs for Windows. New rotate-log-files script. Working upgrade.ps1 |
||
| //guest/perforce_software/sdp/dev/Server/Windows/p4/common/bin/rotate-log-files.ps1 | |||||
| #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. |
||