Логирование
Log
Для работы с логом используется Monolog
Каталог хранения логов определяется параметром SettingsPath::LOGS
Минимальный уровень сбора логов DEBUG
Для записи в главный (Main) лог используйте код:
use Monolog\Logger;
/** @var Logger $log */
$log = $this->dic['log'];
$log->warning('Внимание');
$log->info('Уведомление');
Полный список всех уровней смотрите в документации Monolog
Также вы можете создать свой персональный логгер с отдельным файлом
use Lemurro\Api\Core\Helpers\LoggerFactory;
$log = LoggerFactory::create('MyErrors');
$log->info('Уведомление');
В итоге будет создан файл myerrors.log
в каталоге с логами
DataChangeLogs
Логирование изменения данных в БД
use Lemurro\Api\Core\Helpers\DataChangeLog;
/** @var DataChangeLog $data_change_log */
$data_change_log = $this->dic['datachangelog'];
$data_change_log->insert($table_name, $action_type, $id, $data = []);
-
$table_name
Обязательно - Имя таблицы -
$action_type
Обязательно - Тип действия ('insert'|'update'|'delete') -
$id
Обязательно - ИД записи -
$data
Не обязательно - Массив данных, хранится будет в виде json-строки
Пример:
use Lemurro\Api\Core\Helpers\DataChangeLog;
/** @var DataChangeLog $data_change_log */
$data_change_log = $this->dic['datachangelog'];
$data_change_log->insert('users', 'save', 3, [
'field1' => 'value1',
'field2' => 'value2',
'field3' => 'value3',
]);