Skip to content

AEM Log Rotation Powershell

Following is the powershell script to rotate logs depending on the retention policy.

[code lang=powershell]
$CurrentDate = Get-Date
$TIMESTAMP=$(get-date -f yyyy_MM_dd_hhmmss)
$DatetoDelete = $CurrentDate.AddDays($DAYS_TO_DELETE)

if ((Test-Path -path $BACKUP_PATH)) {
mkdir $ARCHIVEPATH > $null
else {
Write-Output “Backup Directory Not Found”

if ((Test-Path -path $LOGPATH)) {
echo ” ”
Write-Output “AEM logs Found, compressing and rotating logs”
else {
echo ” ”
Write-Output “AEM logs not found, Exiting”

# Moving logs to archive directory
Get-ChildItem -Path $LOGPATH -Exclude “upgrade.log”, “startup.log”, “request.log”, “error.log”, “history.log”, “access.log”, “audit*.log” | Where-Object { $_.LastWriteTime -lt $DatetoDelete } | Move-Item -Destination “$ARCHIVEPATH”

# Compressing
compress-archive -Path $ARCHIVEPATH -CompressionLevel optimal -DestinationPath “${BACKUP_PATH}archive_$”
Remove-Item -Path $ARCHIVEPATH -Recurse

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.