beta/bx.logger
Composer 安装命令:
composer require beta/bx.logger
包简介
PSR-3 logger for Bitrix app
README 文档
README
В модуле есть 3 обертки над API Битрикс:
- FileLogger - является оберкткой AddMessage2Log, соотвественно путь сохранения логов определяется константой LOG_FILENAME
- JournalLogger - записывает логи в журнал событий /bitrix/admin/event_log.php?lang=ru, аргумент $context может содержать несколько важных параметов, соотвествующих полям таблицы
- DebugLogger - является отберткой над методами Bitrix\Main\Diag\Debug::dumpToFile и Bitrix\Main\Diag\Debug::writeToFile
Так же есть реализация с простой записью файла SimpleTextLogger - в конструкторе определяется, формат даты/времени и формат сообщения.
В модуле задана абстракция более высокого уровня LoggerManagerInterface, позволяет задать несколько логеров под разные уровни + методы для логирования исключений и объекта с результатом Bitrix\Main\Result
Пример использования:
use Bx\Logger\LoggerManager; use Bx\Logger\SimpleTextLogger; use Bx\Logger\JournalLogger; use Bx\Logger\FileLogger; use Psr\Log\LogLevel; $simpleTextLogger = new SimpleTextLogger( $_SERVER['DOCUMENT_ROOT'].'/log/ation_'.date('Y-m-d').'.log', // путь сохранения лога 'Y/m/d H:i:s', // формат даты/времени "{date} {level}:\t{message}" // формат сообщения ) $loggerManager = new LoggerManager($simpleTextLogger); // создаем новый менеджер с логером по-умолчанию и типом default $journalLogger = new JournalLogger('my.module'); $loggerManager->setLogger($journalLogger, LogLevel::ERROR); // логи с ошибками будут записаны в журнал событий битрикса $fileLogger = new FileLogger(); $loggerManager->setLogger($fileLogger, LogLevel::WARNING); // логи с предупреждениями будут записаны в лог LOG_FILENAME $loggerManager->info('Some info message'); // сообщение будет записано через логгер SimpleTextLogger $loggerManager->error('Some error message', [ // сообщение будет записано в журнал событий 'ITEM_ID' => 1, ]); $loggerManager->warning('Some warning message'); // сообщение будет записано в файл LOG_FILENAME // создаем новый менеджер с логером по-умолчанию и типом test $loggerManager = new LoggerManager(\Bx\Logger\TypedLoggerFactory::createTypedLogger($simpleTextLogger, 'test'));
beta/bx.logger 适用场景与选型建议
beta/bx.logger 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 2.74k 次下载、GitHub Stars 达 0, 最近一次更新时间为 2022 年 07 月 19 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 beta/bx.logger 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 beta/bx.logger 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 2.74k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2022-07-19