| <?php |
|
|
| |
| |
| |
| |
| |
| |
|
|
| namespace Piwik\Plugins\Diagnostics\Diagnostic; |
|
|
| use Piwik\SettingsServer; |
| use Piwik\Translation\Translator; |
|
|
| |
| |
| |
| class MemoryLimitCheck implements Diagnostic |
| { |
| |
| |
| |
| private $translator; |
|
|
| |
| |
| |
| private $minimumMemoryLimit; |
|
|
| public function __construct(Translator $translator, $minimumMemoryLimit) |
| { |
| $this->translator = $translator; |
| $this->minimumMemoryLimit = $minimumMemoryLimit; |
| } |
|
|
| public function execute() |
| { |
| $label = $this->translator->translate('Installation_SystemCheckMemoryLimit'); |
|
|
| SettingsServer::raiseMemoryLimitIfNecessary(); |
|
|
| $memoryLimit = SettingsServer::getMemoryLimitValue(); |
| $comment = $memoryLimit . 'M'; |
|
|
| if (false === $memoryLimit) { |
| $status = DiagnosticResult::STATUS_OK; |
| $comment = $this->translator->translate('Installation_SystemCheckMemoryNoMemoryLimitSet'); |
| } elseif ($memoryLimit >= $this->minimumMemoryLimit) { |
| $status = DiagnosticResult::STATUS_OK; |
| } else { |
| $status = DiagnosticResult::STATUS_WARNING; |
| $comment .= sprintf( |
| '<br />%s<br />%s', |
| $this->translator->translate('Installation_SystemCheckMemoryLimitHelp'), |
| $this->translator->translate('Installation_RestartWebServer') |
| ); |
| } |
|
|
| return array(DiagnosticResult::singleResult($label, $status, $comment)); |
| } |
| } |
|
|