fix: make rotate logs a TimedJob and run every hour

Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
This commit is contained in:
Salvatore Martire 2025-06-06 16:28:15 +02:00 committed by Côme Chilliet
parent 6bdde907ff
commit 5fef6f1c90

View file

@ -7,6 +7,8 @@
*/
namespace OC\Log;
use OCP\AppFramework\Utility\ITimeFactory;
use OCP\BackgroundJob\TimedJob;
use OCP\IConfig;
use OCP\Log\RotationTrait;
use Psr\Log\LoggerInterface;
@ -17,9 +19,15 @@ use Psr\Log\LoggerInterface;
* For more professional log management set the 'logfile' config to a different
* location and manage that with your own tools.
*/
class Rotate extends \OCP\BackgroundJob\Job {
class Rotate extends TimedJob {
use RotationTrait;
public function __construct(ITimeFactory $time) {
parent::__construct($time);
$this->setInterval(3600);
}
public function run($argument): void {
$config = \OCP\Server::get(IConfig::class);
$this->filePath = $config->getSystemValueString('logfile', $config->getSystemValueString('datadirectory', \OC::$SERVERROOT . '/data') . '/nextcloud.log');