codememory/logging
日志记录
v2.1
2021-09-10 22:31 UTC
Requires
- php: >=8.0
- ext-redis: *
- codememory/config: ^2.0
- codememory/date-time: ^1.0
- codememory/fs: ^1.1
- codememory/global-config: ^1.1
- codememory/profiling: ^2.2
- codememory/redis: ^1.0
- monolog/monolog: ^2.3
Requires (Dev)
- symfony/var-dumper: ^5.3
This package is auto-updated.
Last update: 2024-09-11 05:07:19 UTC
README
安装
composer require codememory/logging
使用配置时,必须执行以下命令
- 如果不存在,则创建全局配置
php vendor/bin/gc-cdm g-config:init
- 合并所有配置
php vendor/bin/gc-cdm g-config:merge --all
在 configs 文件夹中创建 logging.yaml 配置文件。这些名称可以通过全局配置 .config/.codememory.json 来指导。
配置概述
# configs/logging.yaml logging: # Log handlers handlers: # Handler name to specify in the logger defaultStream: # Namespace handler handler: Codememory\Components\Logging\Handlers\StreamHandler # Handler level that will be triggered for loggers with this level forLevel: DEBUG # Loggers loggers: # Logger Name phpError: handlerName: defaultStream # Name of the handler where the logger will be saved forRun: true # Create a logger to run message: null # Mandatory if "forRun" is true level: debug # Mandatory if "forRun" is true context: {} # Data, Mandatory if "forRun" is true extra: {} # Extra Data, Mandatory if "forRun" is true handlerParameters: path: "storage/php.log" # Path if handler "stream" key: "redisKey" # Redis key if handler "redis"
如果指定了 forRun 键,则只需执行 logger,无需调用 level 和其他数据。请参见以下示例
执行 logger 的示例
<?php use Codememory\Components\Logging\Logging; require_once 'vendor/autoload.php'; $logging = new Logging(); // Выполнение логгера из конфигурации $logging->executeLogger('phpError');
创建处理器和日志记录器的示例
use Codememory\Components\Logging\Handlers\StreamHandler; use Codememory\Components\Logging\Logger; // Добавление обработчика $logging->addHandler('new-handler', StreamHandler::class, Logger::ERROR); // Добавление логгера $logging->addLogger('my-logger', 'new-handler', [ 'path' => 'my-log.log' ]) ->error('Сообщение логгера', ['context-data']) ->addExtra(['extra-data']);
其他日志记录方法
-
existLogger(): bool
检查 Logger 是否存在- string $name
-
getLogger(): Logger
返回 Logger- string $name
-
existHandler(): bool
检查处理器是否存在- string $name
-
getHandler(): HandlerInterface
返回处理器- string $name