diff options
-rw-r--r-- | core/ajax/update.php | 6 | ||||
-rw-r--r-- | core/command/upgrade.php | 6 | ||||
-rw-r--r-- | lib/private/updater.php | 16 |
3 files changed, 28 insertions, 0 deletions
diff --git a/core/ajax/update.php b/core/ajax/update.php index a693deeb9cf..ff18d2bc04b 100644 --- a/core/ajax/update.php +++ b/core/ajax/update.php @@ -88,6 +88,12 @@ if (OC::checkUpgrade(false)) { $eventSource->close(); OC_Config::setValue('maintenance', false); }); + $updater->listen('\OC\Updater', 'setDebugLogLevel', function ($logLevel, $logLevelName) use($eventSource, $l) { + $eventSource->send('success', (string)$l->t('Set log level to debug - current level: "%s"', [ $logLevelName ])); + }); + $updater->listen('\OC\Updater', 'resetLogLevel', function ($logLevel, $logLevelName) use($eventSource, $l) { + $eventSource->send('success', (string)$l->t('Reset log level to "%s"', [ $logLevelName ])); + }); try { $updater->upgrade(); diff --git a/core/command/upgrade.php b/core/command/upgrade.php index 44e0b66c17c..fa160d9a1c0 100644 --- a/core/command/upgrade.php +++ b/core/command/upgrade.php @@ -177,6 +177,12 @@ class Upgrade extends Command { $updater->listen('\OC\Updater', 'failure', function ($message) use($output, $self) { $output->writeln("<error>$message</error>"); }); + $updater->listen('\OC\Updater', 'setDebugLogLevel', function ($logLevel, $logLevelName) use($output) { + $output->writeln("<info>Set log level to debug - current level: '$logLevelName'</info>"); + }); + $updater->listen('\OC\Updater', 'resetLogLevel', function ($logLevel, $logLevelName) use($output) { + $output->writeln("<info>Reset log level to '$logLevelName'</info>"); + }); if(OutputInterface::VERBOSITY_NORMAL < $output->getVerbosity()) { $updater->listen('\OC\Updater', 'repairInfo', function ($message) use($output) { diff --git a/lib/private/updater.php b/lib/private/updater.php index b33180c3425..8aa8b0703d7 100644 --- a/lib/private/updater.php +++ b/lib/private/updater.php @@ -32,6 +32,7 @@ namespace OC; +use OC\Core\Command\Log\Manage; use OC\Hooks\BasicEmitter; use OC_App; use OC_Installer; @@ -69,6 +70,14 @@ class Updater extends BasicEmitter { /** @var bool */ private $skip3rdPartyAppsDisable; + private $logLevelNames = [ + 0 => 'Debug', + 1 => 'Info', + 2 => 'Warning', + 3 => 'Error', + 4 => 'Fatal', + ]; + /** * @param HTTPHelper $httpHelper * @param IConfig $config @@ -177,6 +186,10 @@ class Updater extends BasicEmitter { * @return bool true if the operation succeeded, false otherwise */ public function upgrade() { + $logLevel = $this->config->getSystemValue('loglevel', \OCP\Util::WARN); + $this->emit('\OC\Updater', 'setDebugLogLevel', [ $logLevel, $this->logLevelNames[$logLevel] ]); + $this->config->setSystemValue('loglevel', \OCP\Util::DEBUG); + $wasMaintenanceModeEnabled = $this->config->getSystemValue('maintenance', false); if(!$wasMaintenanceModeEnabled) { @@ -208,6 +221,9 @@ class Updater extends BasicEmitter { $this->emit('\OC\Updater', 'maintenanceActive'); } + $this->emit('\OC\Updater', 'resetLogLevel', [ $logLevel, $this->logLevelNames[$logLevel] ]); + $this->config->setSystemValue('loglevel', $logLevel); + return $success; } |