hyperf如何开启日志

发布时间:2021-12-28 10:54:50 阅读:2335次

日志非常重要,在用hyperf开发如何记录日志呢?

1、安装包composer require hyperf/logger

2、查看配置文件config/autoload/logger.php

<?php

declare(strict_types=1);
return [
    'default' => [
        'handler' => [
            'class' => Monolog\Handler\StreamHandler::class,
            'constructor' => [
                'stream' => BASE_PATH . '/runtime/logs/hyperf.log',
                'level' => Monolog\Logger::DEBUG,
            ],
        ],
        'formatter' => [
            'class' => Monolog\Formatter\LineFormatter::class,
            'constructor' => [
                'format' => null,
                'dateFormat' => 'Y-m-d H:i:s',
                'allowInlineLineBreaks' => true,
            ],
        ],
    ],
];

3、添加路由

Router::get('/log', 'App\Controller\LogController@index');

4、添加controller

<?php

declare(strict_types=1);
namespace App\Controller;
use Hyperf\HttpServer\Contract\RequestInterface;
use Hyperf\Logger\LoggerFactory;
use Hyperf\DbConnection\Db;
use Hyperf\Utils\Arr;
class LogController extends AbstractController
{
    protected $logger;
    public function __construct(LoggerFactory $loggerFactory)
    {
        $this->logger = $loggerFactory->get('log', 'default');
    }
    public function index(RequestInterface $request)
    {
        $id = $request->input('id',1);
        $this->logger->info("log message.");
        $list = Db::connection('default')->select("select *from user where id = $id");
        var_dump(Arr::last(Db::getQueryLog()));
        error_log(print_r($id,true),3,"/tmp/1.txt");
        return $list;
    }
}

如有问题,可以QQ搜索群1028468525加入群聊,欢迎一起研究技术

支付宝 微信

有疑问联系站长,请联系QQ:QQ咨询

转载请注明:hyperf如何开启日志 出自老鄢博客 | 欢迎分享