Логирование в БД Битрикс24

По умолчанию логирование ошибок в Битрикс отключено, она полагается на внутренний механизм логирования PHP. Без дополнительного написания кода можно включить запись в файл, так как в Битрикс уже есть класс для записи в файл  FileExceptionHandlerLog . Для записи в БД нужно наследовать класс ExceptionHandlerLog. Я следовал инструкции https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&CHAPTER_ID=02795&LESSON_PATH=3913.3516.5062.2795#exception_handling и вот что у меня получилось:

Произошло обновление сайта — большой скачок с версии 7.2 на 8.1 версию PHP. Обновление самого сайта прошло относительно быстро. WordPress был обновлен с 5.1 до самой актуальной версии 6.хх. Были обвнолены все плагины, так как большинство уже несовместимо с 8.1 PHP. Не совместимым с новой версией оказался плагин Crayon Syntax Highlight — его уже не обновляют 7 лет. Пришлось перейти на другой Urvanov Syntax Highlighter. Пока что самой большой проблемой остается тема Saga — эту тему WordPress не обновляли уже давно, поэтому она несовместима с версией 8.1. Нужно или самому исправлять все недочеты, или перейти на другой шаблон.

Допустим вы пишите код для битрикса, создаете компонент или модуль, и хотели бы через асинхронные вызовы менять сущности битрикса. Через классы D7 легко написать свой обработчик или бекенд, назвать его ajax.php и обращаться к нему. Но если нужно делать стандартные операции, которые есть в Bitrix REST, то незачем все писать с нуля. Можно использовать встроенный ajax.runAction https://dev.1c-bitrix.ru/api_help/js_lib/ajax/bx_ajax_runaction.php Например, взять задачу из БД. Для этого нужно написать:

Который вернет ответ

Требуется кэшировать структуру в Memcache Понадобятся: Golang Memcache Telnet — опционально Вся идея в том, чтобы превратить структуру в байты с помощью Json.Marshal и сохранить в кеше, затем десериализовать с помощью Json.Unmarshal

localhost:11211 — Хост memcache, 11211 — порт по умолчанию fmt.Println(«Get from cache», userFromCache, err) выводит

Также можно посмотреть в самом Memcache через Telnet с помощью команды

Если у вас Windows 10 и не установлен telnet, то нужно сначала загрузить через команду

 

Прекрасное видео про мониторинг. Автор доступно и наглядно объясняет про основы, показывает примеры на продакшене. Это видео лишь часть, курса по микросервисам, так что можно узнать не только мониторинг в частности, но и про экосистему микросервисов в целом.

В Laravel/Lumen после какого-то события можно вызвать нужную логику. Это очень удобно, когда нужно сохранить код чистым и разбить его на мелкие логические кусочки, которые легче читать и понять, соответственно и поддерживать. Например, после редактирования пользователя вызвать событие UserAfterUpdate, к которому могут подписаться разные слушатели. Аналогом такой системы является всем известная Jquery.on(‘event’);

PowerShell profile - Default Directory

При открытии PowerShell директория по умолчанию устанавливается как C:\Users\<username>. Допустим, все проекты храняться в папке D:\Projects\ и не хотелось бы при каждом запуске PowerShell запускать команду на смену директории cd D:\Projects\ На помощь придут профили Powershell

Xiaomi Mi Gaming Laptop 1st Gen Cooler

Речь пойдет про первое поколение ноутбуков Xiaomi Mi Gaming Laptop 1st Gen CoreI5 7300HQ. Симптомы неисправности: вначале появляется небольшой шум, затем через некоторое время вибрация в кулере. Шум может начаться не сразу после включения ноутбука, а через некоторое время, после прогрева. Также особенность в постепенной деградации шума, то есть в начале едва заметный, но после нескольких недель шум будет постепенно увеличиться и в конце может появиться опасная вибрация отдающая на весь корпус. Как это лечить?