定制 sibirsky87/yii-monolog 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

sibirsky87/yii-monolog

Composer 安装命令:

composer require sibirsky87/yii-monolog

包简介

Extension for using monolog with yii 1.x

README 文档

README

Inspired by enlitepro/enlite-monolog and smartapps-fr/yii-monolog

Install

The recommended way to install is through composer from command line.

composer require asuran/yii-monolog

Usage

  1. Add the component to the preload list
<?php 

return [
    'preload' => [
        'monolog',
    ],
];
  1. Configure the component
<?php
return [
    'components' => [
        'monolog' => [
            'class' => 'YiiMonolog\MonologComponent',
            'name' => 'MyApplication',
            'handlers' => [
                'file' => [
                    'class' => 'Monolog\Handler\StreamHandler',
                    'stream' => '/runtime/app.log',
                    'formatter' => 'Monolog\Formatter\LineFormatter',
                ],
                static function () {
                    /** @var StreamHandler $stream */
                    $stream = Yii::createComponent([
                        'class' => RotatingFileHandler::class,
                    ],
                        Yii::app()->runtimePath.'/application.log', 10);
            
                    $formatter = Yii::createComponent([
                        'class' => LineFormatter::class,
                    ]);
            
                    $stream->setFormatter($formatter);
            
                    return $stream;
                }
            ],
            'processors' => [
                'Monolog\Processor\ProcessIdProcessor',
            ],
        ],
    ],
];
  1. Add log route
<?php
return [
    'components' => [
        'log' => [
            'class' => 'CLogRouter',
            'routes' => [
                'monolog' => [
                    'class' => 'YiiMonolog\MonologLogRoute',
                ],
            ],
        ],
    ],
];
  1. Add exception handler
<?php
return [
    'components' => [
        'errorHandler' => [
            'class' => 'YiiMonolog\MonologErrorHandler',
            'errorAction' => 'site/error',
        ],
    ],
];
  1. Use it
<?php

# Using info with variables
Yii::log("A new store user did a self-register on the system", \Monolog\Logger::INFO, [
                    'id' => $form->usuario->id,
                    'category' => 'users',
                ]);

# Using debug with variables
Yii::log("Info about the new store user created", \Monolog\Logger::DEBUG, [
                    'id' => $form->usuario->id,
                    'cnpj' => $form->usuario->usu_login,
                    'email' => $form->usuario->usu_email,
                    'category' => 'users',
                    ]);

# Using error without variables.
# System will convert the 3th parameter in "category" parameter and store it as an array of variables
# This first example keeps the Yii::log compatible with old logs in your system
Yii::log("File not found", CLogger::LEVEL_ERROR, "command.gearman");

# This another example allows to use all monolog levels for messages
Yii::log("File not found", \Monolog\Logger::ERROR, "command.gearman");  

统计信息

  • 总下载量: 24
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 4
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0
  • 更新时间: 2022-04-07

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固