Новости Joomla

Joomla 6: Автоматические обновления ядра в Joomla

Joomla 6: Автоматические обновления ядра в Joomla

👩‍💻 Joomla 6: Автоматические обновления ядра в Joomla. В октябрьском номере официального журнала Joomla - Joomla Community Magazine вышла статья David Jardin, где рассказывается о внедрении функционала автоматического обновления ядра Joomla.❓Почему сейчас? Joomla же жила как-то 20 лет без автоматических обновлений?Это оказалась самая востребованная за последнее время от пользователей Joomla функция. Но, основная причина внедрения - проблемы безопасности. Всякий раз, когда в новой версии Joomla устраняется уязвимость, злоумышленники начинают анализировать код, чтобы выяснить, какая именно уязвимость была исправлена. И как только они это выясняют - начинается разработка автоматизированных скриптов для взлома как можно большего количества сайтов. Затем доступы к автоматически взломанным сайтам продаются в профильных чатах и ресурсах "пачками" по несколько сотен тысяч или миллионов сайтов. Ваш сайт могли взломать несколько лет назад, но воспользоваться уязвимостью могут не сразу, а тогда, когда у злоумышленников возникнет необходимость. И только после этого вы может быть узнаете об этом.Анализ патча, понимание проблемы и разработка скрипта требуют времени. И если владелец сайта не обновит его до истечения этого срока, сайт может быть взломан. А хакеры действуют быстро! Для критических, легко эксплуатируемых уязвимостей речь идёт о временном окне в 10–12 часов — и этого времени явно недостаточно, чтобы все успели обновить свои сайты.Здесь выходят на первый план автоматизированные обновления: проект Joomla теперь может активно устанавливать обновления (и, следовательно, исправления безопасности) на сайты, чтобы гарантировать, что сайты действительно обновляются вовремя.🕘 От первых идей до реализации прошло 5 лет. И здесь можно вспомнить, как в Joomla 5.1 внедрили TUF - The Update Framework, позволяющий устанавливать защищённое соединение между сайтом и сервером обновлений и исключает возможность supply chain attack (атаки на цепочку поставок).Об особенностях реализации и требованиях к сайту читаем подробнее в статье на JCM.@joomlafeed#joomla #secutiry #jcm

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™. Интервью с волонтёрами 🎈Ну что, друзья, вот и настал этот долгожданный момент. Мы выпустили первое издание собственного журнала под эгидой NorrNext, который включает в себя интервью с видными деятелями сообщества из разных стран и континентов.Общий нарратив: показать, что нас объединяет (Joomla) и узнать больше о людях, которые вносят свой вклад в развитие платформы в своих сообществах. 20 лет — это много. Давайте же узнаем о коллегах 🎁 Первый цикл включает такие страны, как Австрия, Испания, Латвия, Россия, Румыния, Тайланд, Черногория, Чехия.⚙️ С кем интервью: ✔️ Владимир Елисеев 🇷🇺✔️ Дмитрий Рекун 🇱🇻✔️ Дмитрий Цымбал 🇷🇺✔️ Евгений Сивоконь 🇷🇺 ✔️ Сергей Толкачёв 🇷🇺✔️ Dénes Székely 🇷🇴✔️ Jan Pavelka 🇨🇿✔️ Miljan Vujosevic 🇲🇪✔️ Sergio Iglesias 🇪🇸✔️ Sigrid Gramlinger 🇦🇹✔️ Pisan Chueatchatchai 🇹🇭‼️ Новые интервью будут добавляться до конца декабря 2025. Заходите по ссылке время от времени💡👉 Читать далее

0 Пользователей и 1 Гость просматривают эту тему.
  • 27 Ответов
  • 3456 Просмотров
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Компонент чтения логов
« : 23.03.2018, 11:57:52 »
Преамбула и вводная задача

Многие разрабатывают свои расширения и при этом не используют логирование действий и/или ошибок своего расширения или же разрабатывают собственный логгер, почему-то полностью игнорируя уже имеющийся штатный логгер Joomla.
Как правило, причины две:
1. не умение пользоваться JLog
2. логи неудобно просматривать

Если с первой проблемой достаточно просто справиться, просто изучив документацию ( https://docs.joomla.org/Using_JLog#Logging_a_specific_log_file ), то вторая проблема действительно стоит ребром: необходимо либо выкачивать лог по ftp либо просматривать его через файл-менеджер в панели хостинга, оба варианта так себе, но иного решения нет (во всяком случае, я не нашел, поправьте меня, если не прав) :(

Решение

Компонент просмотра сохраненных логов ядра и расширений Joomla

Возможности:
– чтение файлов логов и вывод их содержимого в табличном виде в админке
– авторазворачивание json-строки сообщения при просмотре лога в админке
– возможность скачать файл лога в формате CSV (два варианта: классический и специально для открытия в excel без плясок с бубном)
– возможность удалить файл лога
– (upd 1.2.0) возможность чтения файла лога ошибок PHP (при условии, что он установлен в php.ini и доступен для чтения с сайта)
– (upd 1.3.0) архивирование файла лога в архив с именем файла лога + текущая дата и время (при условии подключенного расширения php-zip), файл лога при этом не очищается и не удаляется, архив сохраняется в папку, указанную в параметрах компонента, по умолчанию /tmp

Требования:
– Joomla 3.2 и выше (задействован com_ajax)
– PHP 5.6 и выше (ну тут сами понимаете  ^-^)

Минус: файл лога читается и выводится целиком, если он большой, то это займет время, создаст нагрузку на ресурсы и трафик, поэтому
Рекомендация разработчикам расширений: при интенсивном логировании предусмотрите авторазбиение логов на части, по типам задач, по периодам, еще как-либо, но чтобы логи ваши не весили мегатонны  ;)

« Последнее редактирование: 13.02.2019, 15:29:30 от AlekVolsk »
*

stepan39

  • Захожу иногда
  • 499
  • 28 / 0
Re: Компонент чтения логов
« Ответ #1 : 23.03.2018, 13:19:03 »
Добрый день!

У меня логи оплаты самописного компонента формируются в таком формате:
Спойлер
[свернуть]

Сам файл находится тут administrator/logs/robokassa.log и виден в Вашем компоненте.

Проблема одна - не отображаются данные:
Показано записей: 0

Как можно решить эту проблему без изменения существующей структуры лога?

Спасибо!
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #2 : 23.03.2018, 14:13:55 »
никак не решить эту проблему, т.к. ваш лог пишется самописным логгером, а не логеером Joomla
могу предложить писать в лог сообщение в джейсоне, которое потом можно будет развернуть в читабельный массив после допила
*

stepan39

  • Захожу иногда
  • 499
  • 28 / 0
Re: Компонент чтения логов
« Ответ #3 : 23.03.2018, 15:26:47 »
никак не решить эту проблему, т.к. ваш лог пишется самописным логгером, а не логеером Joomla
могу предложить писать в лог сообщение в джейсоне, которое потом можно будет развернуть в читабельный массив после допила
Немного странное решение, но я, разумеется, говорю это как дилетант.
Предполагал, что возможно внести в код компонента простое условие, при котором он бы распознавал формат лог-файла и выводил его в удобноваримом виде:

логи Joomla - в виде таблицы, как сейчас
логи, подобные моему - как текст (без форматирования)

Ведь там и там из .log файла чтение идет, без всяких json
 
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #4 : 23.03.2018, 17:27:58 »
На самом деле логи Joomla тоже текстовые, как один текст от другого отличить?
А вообще ничего странного нет: не надо собственных костылей, используйте уже имеющееся апи Joomla

А еще у вас проблема с безопасностью: если перейти по адресу site/administrator/logs/robokassa.log, то я смогу прочитать ваш лог и получу достаточную информацию об обороте средств через ваш сайт
« Последнее редактирование: 23.03.2018, 17:31:17 от AlekVolsk »
*

stepan39

  • Захожу иногда
  • 499
  • 28 / 0
Re: Компонент чтения логов
« Ответ #5 : 23.03.2018, 17:34:13 »
На самом деле логи Joomla тоже текстовые, как один текст от другого отличить?
А вообще ничего странного нет: не надо собственных костылей, используйте уже имеющееся апи Joomla

А еще у вас проблема с безопасностью: если перейти по адресу site/administrator/logs/robokassa.log, то я смогу прочитать ваш лог и получу достаточную информацию об обороте средств через ваш сайт

Да, Вы правы. Спасибо за ответ.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #6 : 23.03.2018, 18:31:17 »
Добавил авторазворачивание json-строки сообщения при просмотре лога в админке
Фикс mime-типа скачиваемого файла лога

Для тех, кто успел поставить версию 1.0.0: эта версия не содержала указателя на автоматический сервер обновлений, пожалуйста, сделайте обновление на новую версию вручную.
« Последнее редактирование: 23.03.2018, 21:29:05 от AlekVolsk »
*

zikkuratvk

  • Глобальный модератор
  • 4820
  • 345 / 2
  • Обслуживаем проекты - дорого.
Re: Компонент чтения логов
« Ответ #7 : 23.03.2018, 21:41:34 »
Сделай расшифровку с поиском)) для людей не в теме будет манна небесная.
Хочется уникальное расширение? ===>>>> JoomLine - Разрабатываем расширения под заказ.
Использую хостинг TimeWeb и Reg
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #8 : 24.03.2018, 00:22:32 »
Сделай расшифровку с поиском)) для людей не в теме будет манна небесная.
Вадим, не понял тебя, что именно расшифровывать необходимо? подробнее пожалуйста
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Компонент чтения логов
« Ответ #9 : 24.03.2018, 07:24:27 »
Цитировать
при интенсивном логировании предусмотрите авторазбиение логов на части, по типам задач, по периодам, еще как-либо, но чтобы логи ваши не весили мегатонны

Это должно быть в настройках компонента.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #10 : 24.03.2018, 11:37:55 »
Это должно быть в настройках компонента.
достаточно проблематично, т.к. просто так на лету разбить на части и внедрить пагинатор не получится, использовать временные таблицы проблематично (представь, что в логе лям строк, очистили таблицу, залили в нее лог, затем начинаем отдавать кусками, - сколько времени займет операция?), хранить большой лог в памяти как состояние модели - вообще бред, других вариантов не вижу
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Компонент чтения логов
« Ответ #11 : 24.03.2018, 13:22:50 »
Алекс, разбиение нужно делать не на факте выдач  лога в админку, а в процессе записи. Ты должен перехватить запись в файл и обработать ее по установленным пользователем параметрам. Как минимум, писать в разные файлы.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #12 : 24.03.2018, 16:06:23 »
@Taatshi я не делаю запись в файл ) я читаю файлы, которые пишут другие, кто угодно, но не я )) этот компонент - просто инструмент для чтения файлов логов, не более )
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Компонент чтения логов
« Ответ #13 : 24.03.2018, 16:23:59 »
Я это понимаю. Пишет Joomla, Тебе нужно этот процесс перехватить и модифицировать. Впрочем, как знаешь.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #14 : 24.03.2018, 17:32:48 »
Ну нет, ничего перехватывать и модифицировать я не буду, да и в JLog нет триггеров, чтобы можно было что-то нормально без хаков перехватить, а что-либо хакать я не буду, и так вся Joomla на костылях ))
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #15 : 30.04.2018, 01:19:28 »
обновление:
- исправлен баг с выводом json с глубокой вложенностью
- поддержка кастомных колонок
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #16 : 08.06.2018, 18:16:45 »
обновление:
- понижено требование к версии php, теперь минимальная - 5.6
- возможность чтения файла лога ошибок PHP (при условии, что он установлен в php.ini и доступен для чтения с сайта)
*

stepan39

  • Захожу иногда
  • 499
  • 28 / 0
Re: Компонент чтения логов
« Ответ #17 : 01.10.2018, 06:34:32 »
Думаю, что была бы полезна такая фича, как архивирование. Задать в настройках путь до папки с архивами и в меню добавить кнопку "Архивировать" рядом с "Удалить".
Когда ежедневных логов скапливается много вместо удаления было бы самое то. И в селекте список маленький и архивчик на всякий случай  ^-^
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #18 : 01.10.2018, 15:34:45 »
рассмотрю такой вариант ) реализуемо, только лог php отдельно висит и его после архивации не удалить
*

stepan39

  • Захожу иногда
  • 499
  • 28 / 0
Re: Компонент чтения логов
« Ответ #19 : 01.10.2018, 15:36:01 »
рассмотрю такой вариант ) реализуемо, только лог php отдельно висит и его после архивации не удалить
Спасибо! А php-лог как раз совсем не важен  ^-^
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #20 : 10.02.2019, 19:26:22 »
Думаю, что была бы полезна такая фича, как архивирование
реализовано в 1.3.0 от 2019-02-10
*

stepan39

  • Захожу иногда
  • 499
  • 28 / 0
Re: Компонент чтения логов
« Ответ #21 : 10.02.2019, 21:18:09 »
реализовано в 1.3.0 от 2019-02-10
Отличная работа! Единственное пожелание - все-таки настраивать путь для папки с архивами
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #22 : 13.02.2019, 15:27:31 »
Обновление 1.3.1:
- полностью исключен jQuery (спасибо @Septdir)
- в параметрах можно указать папку сохранения архивов логов, по умолчанию /tmp
*

stepan39

  • Захожу иногда
  • 499
  • 28 / 0
Re: Компонент чтения логов
« Ответ #23 : 15.02.2019, 12:02:01 »
Обновление 1.3.1:
- полностью исключен jQuery (спасибо @Septdir)
- в параметрах можно указать папку сохранения архивов логов, по умолчанию /tmp
Логично было бы, чтобы архивы ПЕРЕМЕЩАЛИСЬ в указанную папку, а не оставались в общей.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #24 : 15.02.2019, 14:08:38 »
архивы изначально создаются в той папке, которая в настройках указана, зачем лишнее движение по перемещению куда-либо? создайте отдельную папку в пределах сайта и укажите её, будет вам нужное только вам место, это всё сильно индивидуально
*

stepan39

  • Захожу иногда
  • 499
  • 28 / 0
Re: Компонент чтения логов
« Ответ #25 : 15.02.2019, 14:56:45 »
архивы изначально создаются в той папке, которая в настройках указана, зачем лишнее движение по перемещению куда-либо? создайте отдельную папку в пределах сайта и укажите её, будет вам нужное только вам место, это всё сильно индивидуально
Прошу прощения, что некорректно выразился. Ожидал таких действий при нажатии кнопки:
1. Создается архив в нужной папке
2. Оригинал удаляется
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Компонент чтения логов
« Ответ #26 : 15.02.2019, 22:49:13 »
2. Оригинал удаляется
нет, как раз специально оригинал не удаляется, т.к. не всем и не всегда это необходимо, если вам это надо - просто нажмите ещё одну кнопку
*

stepan39

  • Захожу иногда
  • 499
  • 28 / 0
Re: Компонент чтения логов
« Ответ #27 : 16.02.2019, 07:06:24 »
.. и не всегда это необходимо
Наверное, если есть один какой бесконечный лог, данные постоянно дописываются в его конец (ну типа error.php). Если логи ежедневные (как у меня), то разумеется нечего их оставлять после архивирования. Еще раз повторюсь, что обычно логика архивирования у любого расширения Joomla такая: отправить в архив - это именно ПЕРЕМЕЩЕНИЕ в другую папку (категорию и т.д.).
В любом случае огромное спасибо за проделанную работу.

UPDATE: релиз 1.3.3 снимает любые "хотелки", все супер!!!
« Последнее редактирование: 24.02.2019, 10:21:56 от stepan39 »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

SM FAQ - компонент Вопрос-Ответ для Joomla 2.5+

Автор SmokerMan

Ответов: 682
Просмотров: 155602
Последний ответ 11.10.2025, 12:43:44
от wishlight
Компонент для постинга в соцсети (вк) Kcrossposting

Автор kysin

Ответов: 1
Просмотров: 1683
Последний ответ 06.04.2024, 23:55:02
от kysin
[Разработка, нужны советы] Компонент для УО (УК и тсж)

Автор rsa_m

Ответов: 192
Просмотров: 34755
Последний ответ 02.10.2022, 10:11:56
от w24-08
Компонент экспорта новстной ленты сайта в Яндекс и Рамблер новости

Автор Dron79

Ответов: 248
Просмотров: 69355
Последний ответ 06.01.2020, 07:36:42
от Altermass
Управляющий компонент мультилендига + плюс фронтальная часть

Автор zikkuratvk

Ответов: 0
Просмотров: 1086
Последний ответ 06.09.2019, 18:55:37
от zikkuratvk