Як і в інших, у мене файли журналів повністю перестали писати дані.
Джерело помилки - файли журналу не записують дані
У app/Mage.php
вони зробили це зміна:
// Validate file extension before save. Allowed file extensions: log, txt, html, csv
- if (!self::helper('log')->isLogFileExtensionValid($file)) {
+ $_allowedFileExtensions = explode(
+ ',',
+ (string) self::getConfig()->getNode('dev/log/allowedFileExtensions', Mage_Core_Model_Store::DEFAULT_CODE)
+ );
+ $logValidator = new Zend_Validate_File_Extension($_allowedFileExtensions);
+ $logDir = self::getBaseDir('var') . DS . 'log';
+ if (!$logValidator->isValid($logDir . DS . $file)) {
return;
}
який шукає конфігурацію для відокремленого комою списку затверджених розширень файлів. Вони НЕ додавали цей список у конфігурацію - навіть у Mage Admin для нас не було можливості налаштувати це самостійно.
Рішення помилки - файли журналу не записують дані
Щоб вирішити це, просто зробіть запис у базі даних у core_config_data
таблиці.
INSERT INTO core_config_data VALUES ( NULL, 'default', 0, 'dev/log/allowedFileExtensions', 'log,txt,html,csv' );
Очистіть також кеш об'єктів, і ви знову побачите запис даних у файли журналу.
ls -lrt var/log/ | tail
Для довідки ця проблема була на EE 1.14.2.0 із усіма застосованими виправленнями безпеки.
Я відкрив квиток з Magento Support в цьому питанні, але відповіді від техніка ще не отримав. Я в черзі.
Що мене справді бентежить у цій помилці, це те, що Magento вже має метод перевірки розширень файлів журналу, які вони додали через SUPEE-10415 наприкінці 2017 року.
app/code/core/Mage/Log/Helper/Data.php
/**
* Checking if file extensions is allowed. If passed then return true.
*
* @param $file
* @return bool
*/
public function isLogFileExtensionValid($file)
{
$result = false;
$validatedFileExtension = pathinfo($file, PATHINFO_EXTENSION);
if ($validatedFileExtension && in_array($validatedFileExtension, $this->_allowedFileExtensions)) {
$result = true;
}
return $result;
}
Чому вони не використали цю логіку замість того, щоб спробувати неповне переосмислити колоду журналу?