<?php
// cleanup_cron.php
require_once __DIR__ . '/db.php';

$pdo = db();

// Regra de Negócio: Limpar logs brutais de ping guardando as evidências
// por apenas 30 dias (usado para renderizações do status.php e dashboard)
$diasRetencao = 30;

echo "Iniciando limpeza de retenção do banco...\n";

try {
    // 1. Remove linhas antigas da tabela de logs de pings individuais
    $stmtLogs = $pdo->prepare("
        DELETE FROM ping_logs 
        WHERE checked_at < (NOW() - INTERVAL ? DAY)
    ");
    $stmtLogs->execute([$diasRetencao]);
    $deletedLogs = $stmtLogs->rowCount();
    
    // 2. Remove histórico de envios de alerta antigos (opcional, p/ limpar a alerts_sent)
    $stmtAlerts = $pdo->prepare("
        DELETE FROM alerts_sent 
        WHERE sent_at < (NOW() - INTERVAL ? DAY)
    ");
    $stmtAlerts->execute([$diasRetencao]);
    $deletedAlerts = $stmtAlerts->rowCount();

    echo "[SUCESSO] {$deletedLogs} pings expurgados e {$deletedAlerts} alertas arquivados.\n";

} catch (Exception $e) {
    echo "[ERRO] Falha ao expurgar logs: " . $e->getMessage() . "\n";
}
