Use doctrine to purge old logs

[MAILPOET-3624]
This commit is contained in:
Pavel Dohnal
2021-06-04 09:36:28 +02:00
committed by Veljko V
parent e661d07acb
commit e5e7be6437
2 changed files with 14 additions and 9 deletions

View File

@@ -5,6 +5,7 @@ namespace MailPoet\Logging;
use MailPoet\Doctrine\Repository;
use MailPoet\Entities\LogEntity;
use MailPoet\Util\Helpers;
use MailPoetVendor\Carbon\Carbon;
/**
* @extends Repository<LogEntity>
@@ -62,4 +63,12 @@ class LogRepository extends Repository {
return $query->getQuery()->getResult();
}
public function purgeOldLogs(int $daysToKeepLogs) {
$queryBuilder = $this->entityManager->createQueryBuilder();
return $queryBuilder->delete(LogEntity::class, 'l')
->where('l.createdAt < :days')
->setParameter('days', Carbon::now()->subDays($daysToKeepLogs)->toDateTimeString())
->getQuery()->execute();
}
}