diff options
author | Robin Appelman <robin@icewind.nl> | 2016-11-21 17:17:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-21 17:17:02 +0100 |
commit | cd24010fa4199e8ef39b831f6f27138504a9c9d6 (patch) | |
tree | 01815b38c27a4d876a015aa028feca61d479c3bc | |
parent | efdef8f801bd33b5c2e4d982947a4ff41e2514ab (diff) | |
parent | 0048b3aa2e70b2e9d2f1fbb6adb82af31b13f95a (diff) | |
download | nextcloud-server-cd24010fa4199e8ef39b831f6f27138504a9c9d6.tar.gz nextcloud-server-cd24010fa4199e8ef39b831f6f27138504a9c9d6.zip |
Merge pull request #2214 from nextcloud/remove-logging
remove old logging section
-rw-r--r-- | lib/private/Settings/Admin/Logging.php | 86 | ||||
-rw-r--r-- | lib/private/Settings/Manager.php | 6 | ||||
-rw-r--r-- | settings/Controller/LogSettingsController.php | 57 | ||||
-rw-r--r-- | settings/templates/admin/logging.php | 88 | ||||
-rw-r--r-- | tests/Settings/Controller/LogSettingsControllerTest.php | 89 | ||||
-rw-r--r-- | tests/lib/Settings/Admin/LoggingTest.php | 91 | ||||
-rw-r--r-- | tests/lib/Settings/ManagerTest.php | 1 |
7 files changed, 0 insertions, 418 deletions
diff --git a/lib/private/Settings/Admin/Logging.php b/lib/private/Settings/Admin/Logging.php deleted file mode 100644 index 407248ac4b1..00000000000 --- a/lib/private/Settings/Admin/Logging.php +++ /dev/null @@ -1,86 +0,0 @@ -<?php -/** - * @copyright Copyright (c) 2016 Arthur Schiwon <blizzz@arthur-schiwon.de> - * - * @author Arthur Schiwon <blizzz@arthur-schiwon.de> - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ - -namespace OC\Settings\Admin; - -use OC\Log\File as LogFile; -use OCP\AppFramework\Http\TemplateResponse; -use OCP\IConfig; -use OCP\Settings\ISettings; - -class Logging implements ISettings { - /** @var IConfig */ - private $config; - - /** - * @param IConfig $config - */ - public function __construct(IConfig $config) { - $this->config = $config; - } - - /** - * @return TemplateResponse - */ - public function getForm() { - $logType = $this->config->getSystemValue('log_type', 'file'); - $showLog = ($logType === 'file' || $logType === 'owncloud'); - - $numEntriesToLoad = 5; - $entries = LogFile::getEntries($numEntriesToLoad + 1); - $entriesRemaining = count($entries) > $numEntriesToLoad; - $entries = array_slice($entries, 0, $numEntriesToLoad); - - $logFileExists = file_exists(LogFile::getLogFilePath()) ; - $logFileSize = $logFileExists ? filesize(LogFile::getLogFilePath()) : 0; - - $parameters = [ - 'loglevel' => $this->config->getSystemValue('loglevel', 2), - 'entries' => $entries, - 'entriesremain' => $entriesRemaining, - 'doesLogFileExist' => $logFileExists, - 'logFileSize' => $logFileSize, - 'showLog' => $showLog, - ]; - - return new TemplateResponse('settings', 'admin/logging', $parameters, ''); - } - - /** - * @return string the section ID, e.g. 'sharing' - */ - public function getSection() { - return 'logging'; - } - - /** - * @return int whether the form should be rather on the top or bottom of - * the admin section. The forms are arranged in ascending order of the - * priority values. It is required to return a value between 0 and 100. - * - * E.g.: 70 - */ - public function getPriority() { - return 0; - } -} diff --git a/lib/private/Settings/Manager.php b/lib/private/Settings/Manager.php index a6f9aacccb2..990750848d3 100644 --- a/lib/private/Settings/Manager.php +++ b/lib/private/Settings/Manager.php @@ -332,7 +332,6 @@ class Manager implements IManager { 0 => [new Section('server', $this->l->t('Server settings'), 0)], 5 => [new Section('sharing', $this->l->t('Sharing'), 0)], 45 => [new Section('encryption', $this->l->t('Encryption'), 0)], - 90 => [new Section('logging', $this->l->t('Logging'), 0)], 98 => [new Section('additional', $this->l->t('Additional settings'), 0)], 99 => [new Section('tips-tricks', $this->l->t('Tips & tricks'), 0)], ]; @@ -382,11 +381,6 @@ class Manager implements IManager { $form = new Admin\Sharing($this->config); $forms[$form->getPriority()] = [$form]; } - if($section === 'logging') { - /** @var ISettings $form */ - $form = new Admin\Logging($this->config); - $forms[$form->getPriority()] = [$form]; - } if($section === 'additional') { /** @var ISettings $form */ $form = new Admin\Additional($this->config); diff --git a/settings/Controller/LogSettingsController.php b/settings/Controller/LogSettingsController.php index 23e0fba902a..e87d201a83b 100644 --- a/settings/Controller/LogSettingsController.php +++ b/settings/Controller/LogSettingsController.php @@ -42,63 +42,6 @@ use OCP\IConfig; */ class LogSettingsController extends Controller { /** - * @var \OCP\IConfig - */ - private $config; - - /** - * @var \OCP\IL10N - */ - private $l10n; - - /** - * @param string $appName - * @param IRequest $request - * @param IConfig $config - */ - public function __construct($appName, - IRequest $request, - IConfig $config, - IL10N $l10n) { - parent::__construct($appName, $request); - $this->config = $config; - $this->l10n = $l10n; - } - - /** - * set log level for logger - * - * @param int $level - * @return JSONResponse - */ - public function setLogLevel($level) { - if ($level < 0 || $level > 4) { - return new JSONResponse([ - 'message' => (string) $this->l10n->t('log-level out of allowed range'), - ], Http::STATUS_BAD_REQUEST); - } - - $this->config->setSystemValue('loglevel', $level); - return new JSONResponse([ - 'level' => $level, - ]); - } - - /** - * get log entries from logfile - * - * @param int $count - * @param int $offset - * @return JSONResponse - */ - public function getEntries($count=50, $offset=0) { - return new JSONResponse([ - 'data' => \OC\Log\File::getEntries($count, $offset), - 'remain' => count(\OC\Log\File::getEntries(1, $offset + $count)) !== 0, - ]); - } - - /** * download logfile * * @NoCSRFRequired diff --git a/settings/templates/admin/logging.php b/settings/templates/admin/logging.php deleted file mode 100644 index 2f60629c42a..00000000000 --- a/settings/templates/admin/logging.php +++ /dev/null @@ -1,88 +0,0 @@ -<?php -/** - * @copyright Copyright (c) 2016 Arthur Schiwon <blizzz@arthur-schiwon.de> - * - * @author Arthur Schiwon <blizzz@arthur-schiwon.de> - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ - -/** @var \OCP\IL10N $l */ -/** @var array $_ */ - -$levels = ['Debug', 'Info', 'Warning', 'Error', 'Fatal']; -$levelLabels = [ - $l->t( 'Everything (fatal issues, errors, warnings, info, debug)' ), - $l->t( 'Info, warnings, errors and fatal issues' ), - $l->t( 'Warnings, errors and fatal issues' ), - $l->t( 'Errors and fatal issues' ), - $l->t( 'Fatal issues only' ), -]; - -?> - -<div class="section" id="log-section"> - <h2><?php p($l->t('Log'));?></h2> - <?php if ($_['showLog'] && $_['doesLogFileExist']): ?> - <table id="log" class="grid"> - <?php foreach ($_['entries'] as $entry): ?> - <tr> - <td> - <?php p($levels[$entry->level]);?> - </td> - <td> - <?php p($entry->app);?> - </td> - <td class="log-message"> - <?php p($entry->message);?> - </td> - <td class="date"> - <?php if(is_int($entry->time)){ - p(OC_Util::formatDate($entry->time)); - } else { - p($entry->time); - }?> - </td> - <td><?php isset($entry->user) ? p($entry->user) : p('--') ?></td> - </tr> - <?php endforeach;?> - </table> - <p><?php p($l->t('What to log'));?> <select name='loglevel' id='loglevel'> - <?php for ($i = 0; $i < 5; $i++): - $selected = ''; - if ($i == $_['loglevel']): - $selected = 'selected="selected"'; - endif; ?> - <option value='<?php p($i)?>' <?php p($selected) ?>><?php p($levelLabels[$i])?></option> - <?php endfor;?> - </select></p> - - <?php if ($_['logFileSize'] > 0): ?> - <a href="<?php print_unescaped(OC::$server->getURLGenerator()->linkToRoute('settings.LogSettings.download')); ?>" class="button" id="downloadLog"><?php p($l->t('Download logfile'));?></a> - <?php endif; ?> - <?php if ($_['entriesremain']): ?> - <input id="moreLog" type="button" value="<?php p($l->t('More'));?>..."> - <input id="lessLog" type="button" value="<?php p($l->t('Less'));?>..."> - <?php endif; ?> - <?php if ($_['logFileSize'] > (100 * 1024 * 1024)): ?> - <br> - <em> - <?php p($l->t('The logfile is bigger than 100 MB. Downloading it may take some time!')); ?> - </em> - <?php endif; ?> - <?php endif; ?> -</div> diff --git a/tests/Settings/Controller/LogSettingsControllerTest.php b/tests/Settings/Controller/LogSettingsControllerTest.php deleted file mode 100644 index 27ae9328d1f..00000000000 --- a/tests/Settings/Controller/LogSettingsControllerTest.php +++ /dev/null @@ -1,89 +0,0 @@ -<?php -/** - * @author Georg Ehrke - * @copyright 2014 Georg Ehrke <georg@ownCloud.com> - * - * This file is licensed under the Affero General Public License version 3 or - * later. - * See the COPYING-README file. - */ - -namespace Tests\Settings\Controller; - -use \OC\Settings\Application; -use OC\Settings\Controller\LogSettingsController; -use OCP\AppFramework\Http\StreamResponse; -use OCP\IConfig; -use OCP\IL10N; -use OCP\IRequest; - -/** - * @package Tests\Settings\Controller - */ -class LogSettingsControllerTest extends \Test\TestCase { - - /** @var IConfig|\PHPUnit_Framework_MockObject_MockObject */ - private $config; - - /** @var LogSettingsController */ - private $logSettingsController; - - protected function setUp() { - parent::setUp(); - - $this->config = $this->createMock(IConfig::class); - $l = $this->createMock(IL10N::class); - $l->method('t') - ->will($this->returnCallback(function($text, $parameters = []) { - return vsprintf($text, $parameters); - })); - $this->logSettingsController = new LogSettingsController( - 'settings', - $this->createMock(IRequest::class), - $this->config, - $l - ); - } - - /** - * @dataProvider logLevelData - */ - public function testSetLogLevel($level, $inRange) { - if ($inRange) { - $this->config->expects($this->once()) - ->method('setSystemValue') - ->with('loglevel', $level); - } - - $response = $this->logSettingsController->setLogLevel($level)->getData(); - - if ($inRange) { - $expectedResponse = ['level' => $level]; - } else { - $expectedResponse = ['message' => 'log-level out of allowed range']; - } - - $this->assertSame($expectedResponse, $response); - } - - public function logLevelData() { - return [ - [-1, false], - [0, true], - [1, true], - [2, true], - [3, true], - [4, true], - [5, false], - ]; - } - - public function testDownload() { - $response = $this->logSettingsController->download(); - - $this->assertInstanceOf('\OCP\AppFramework\Http\StreamResponse', $response); - $headers = $response->getHeaders(); - $this->assertEquals('application/octet-stream', $headers['Content-Type']); - $this->assertEquals('attachment; filename="nextcloud.log"', $headers['Content-Disposition']); - } -} diff --git a/tests/lib/Settings/Admin/LoggingTest.php b/tests/lib/Settings/Admin/LoggingTest.php deleted file mode 100644 index 181553d3894..00000000000 --- a/tests/lib/Settings/Admin/LoggingTest.php +++ /dev/null @@ -1,91 +0,0 @@ -<?php -/** - * @copyright Copyright (c) 2016 Lukas Reschke <lukas@statuscode.ch> - * - * @author Lukas Reschke <lukas@statuscode.ch> - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ - -namespace Test\Settings\Admin; - -use OC\Settings\Admin\Logging; -use OCP\AppFramework\Http\TemplateResponse; -use OCP\IConfig; -use Test\TestCase; -use OC\Log\File as LogFile; - -class LoggingTest extends TestCase { - /** @var Logging */ - private $admin; - /** @var IConfig */ - private $config; - - public function setUp() { - parent::setUp(); - $this->config = $this->getMockBuilder('\OCP\IConfig')->getMock(); - - $this->admin = new Logging( - $this->config - ); - } - - public function testGetForm() { - $this->config - ->expects($this->at(0)) - ->method('getSystemValue') - ->with('log_type', 'file') - ->willReturn('owncloud'); - $this->config - ->expects($this->at(1)) - ->method('getSystemValue') - ->with('loglevel', 2) - ->willReturn(3); - - $numEntriesToLoad = 5; - $entries = LogFile::getEntries($numEntriesToLoad + 1); - $entriesRemaining = count($entries) > $numEntriesToLoad; - $entries = array_slice($entries, 0, $numEntriesToLoad); - - $logFileExists = file_exists(LogFile::getLogFilePath()) ; - $logFileSize = $logFileExists ? filesize(LogFile::getLogFilePath()) : 0; - - $expected = new TemplateResponse( - 'settings', - 'admin/logging', - [ - 'loglevel' => 3, - 'entries' => $entries, - 'entriesremain' => $entriesRemaining, - 'doesLogFileExist' => $logFileExists, - 'logFileSize' => $logFileSize, - 'showLog' => true, - ], - '' - ); - - $this->assertEquals($expected, $this->admin->getForm()); - } - - public function testGetSection() { - $this->assertSame('logging', $this->admin->getSection()); - } - - public function testGetPriority() { - $this->assertSame(0, $this->admin->getPriority()); - } -} diff --git a/tests/lib/Settings/ManagerTest.php b/tests/lib/Settings/ManagerTest.php index 942a2bb63e7..150609499ad 100644 --- a/tests/lib/Settings/ManagerTest.php +++ b/tests/lib/Settings/ManagerTest.php @@ -177,7 +177,6 @@ class ManagerTest extends TestCase { 0 => [new Section('server', 'Server settings', 0)], 5 => [new Section('sharing', 'Sharing', 0)], 45 => [new Section('encryption', 'Encryption', 0)], - 90 => [new Section('logging', 'Logging', 0)], 98 => [new Section('additional', 'Additional settings', 0)], 99 => [new Section('tips-tricks', 'Tips & tricks', 0)], ], $this->manager->getAdminSections()); |