tofex/m2-log

Tofex Magento 2 日志包装器

安装: 372

依赖: 1

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 0

开放问题: 0

类型:magento2-module

1.0.1 2022-08-29 05:56 UTC

This package is auto-updated.

Last update: 2024-09-16 03:54:04 UTC


README

介绍

本模块编写是为了实现将一条记录同时记录到多个日志文件中的功能。

如果您仅安装此模块,则不会发生任何变化,因为默认的 Magento 日志记录器将被添加为第一个日志记录器。您可以使用以下描述的插件添加更多日志记录器。

用法

代码

以下示例基于使用此基础模块的功能模块。

首先,您需要在模块的 di.xml 中添加一个插件定义。

<type name="Tofex\Log\Logger\Wrapper">
    <plugin name="module-plugin" type="Tofex\Module\Plugin\Logging" sortOrder="10" disabled="false"/>
</type>

在此插件中,您可以添加任意数量的附加日志记录器。在这种情况下,添加了四个额外的日志记录器。日志记录器本身是通过 Magento 的依赖注入包含的。每个日志记录器都必须实现 LoggerInterface 接口。

<?php

namespace Tofex\Module\Plugin;

use Tofex\Module\Logger\Monolog\ErrorLog;
use Tofex\Module\Logger\Monolog\Log;
use Tofex\Module\Logger\Monolog\SuccessLog;
use Tofex\Log\Logger\Wrapper;

/**
 * @author      Andreas Knollmann
 * @copyright   Copyright (c) 2014-2022 Tofex UG (http://www.tofex.de)
 * @license     https://open-source.org.cn/licenses/mit-license.php MIT
 */
class Logging
{
    /** @var Log */
    private $moduleLog;

    /** @var ErrorLog */
    private $moduleErrorLog;

    /** @var SuccessLog */
    private $moduleSuccessLog;

    /**
     * @param Log        $moduleLog
     * @param ErrorLog   $moduleErrorLog
     * @param SuccessLog $moduleSuccessLog
     */
    public function __construct(Log $moduleLog, ErrorLog $moduleErrorLog, SuccessLog $moduleSuccessLog)
    {
        $this->moduleLog = $moduleLog;
        $this->moduleErrorLog = $moduleErrorLog;
        $this->moduleSuccessLog = $moduleSuccessLog;
    }

    /**
     * @param Wrapper $wrapper
     */
    public function afterInitialize(Wrapper $wrapper)
    {
        $wrapper->addLoggers([$this->moduleLog, $this->moduleErrorLog, $this->moduleSuccessLog]);
    }
}

许可证

Tofex Log 在 MIT 许可证下授权 - 详细信息请参阅 LICENSE 文件。