1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-04 20:52:43 +01:00
phorge-phorge/src/applications/drydock/garbagecollector/DrydockLogGarbageCollector.php

33 lines
706 B
PHP
Raw Normal View History

<?php
final class DrydockLogGarbageCollector
extends PhabricatorGarbageCollector {
const COLLECTORCONST = 'drydock.logs';
public function getCollectorName() {
return pht('Drydock Logs');
}
public function getDefaultRetentionPolicy() {
return phutil_units('30 days in seconds');
}
public function collectGarbage() {
$log_table = new DrydockLog();
$conn_w = $log_table->establishConnection('w');
$now = PhabricatorTime::getNow();
$ttl = phutil_units('30 days in seconds');
queryfx(
$conn_w,
'DELETE FROM %T WHERE epoch <= %d LIMIT 100',
$log_table->getTableName(),
$now - $ttl);
return ($conn_w->getAffectedRows() == 100);
}
}