Assets/Cleanup-OpsLogs.ps1

<#
.SYNOPSIS
    Cleans up old Ops logs.
.PARAMETER DaysToKeep
    Number of days to keep logs. Default 30.
#>

param (
    [int]$DaysToKeep = 30
)

$LogDir = "C:\Ops\Logs"
$CutoffDate = (Get-Date).AddDays(-$DaysToKeep)

Write-Output "Cleaning up logs older than $CutoffDate in $LogDir"

Get-ChildItem -Path $LogDir -File | Where-Object { $_.LastWriteTime -lt $CutoffDate } | ForEach-Object {
    try {
        Remove-Item -Path $_.FullName -Force
        Write-Output "Deleted: $($_.Name)"
    } catch {
        Write-Error "Failed to delete $($_.Name): $_"
    }
}