日志非常重要,在用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加入群聊,欢迎一起研究技术
转载请注明:hyperf如何开启日志 出自老鄢博客 | 欢迎分享