1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-04 04:32:43 +01:00
phorge-phorge/src/applications/conduit/garbagecollector/ConduitLogGarbageCollector.php

36 lines
804 B
PHP
Raw Normal View History

<?php
final class ConduitLogGarbageCollector
extends PhabricatorGarbageCollector {
const COLLECTORCONST = 'conduit.logs';
public function getCollectorName() {
return pht('Conduit Logs');
}
public function getDefaultRetentionPolicy() {
return phutil_units('180 days in seconds');
}
public function collectGarbage() {
$key = 'gcdaemon.ttl.conduit-logs';
$ttl = PhabricatorEnv::getEnvConfig($key);
if ($ttl <= 0) {
return false;
}
$table = new PhabricatorConduitMethodCallLog();
$conn_w = $table->establishConnection('w');
queryfx(
$conn_w,
'DELETE FROM %T WHERE dateCreated < %d
ORDER BY dateCreated ASC LIMIT 100',
$table->getTableName(),
time() - $ttl);
return ($conn_w->getAffectedRows() == 100);
}
}