随着前后端分离开发的趋势化,PHP也渐渐只专注于接口API的开发,在开发过程中,我们很常见的需求就是记录每一次API请求的请求和响应结果的日志,所以今天我们就介绍一下如何基于PHP Monolog,轻松打造一个API请求日志记录器。
在开始之前,我们需要先简单介绍一下
1、Handler
在Monolog中,Handler就是负责具体写入日志的处理类,比如写入文件就是Monolog\Handler\StreamHandler,monogodb 使用 Monolog\Handler\MongoDBHandler,而我们今天使用到的就是之前介绍过的\Pianzhou\Monolog\Handler\DatabaseHandler
2、Formatter
在Monolog中,Formatter就是负责将记录的数据格式化成Handler需要的格式,最常用的就是Monolog\Formatter\LineFormatter,而我们今天使用到的是\Pianzhou\Monolog\Formatter\TransformScalarFormatter,这个格式化类基于Monolog\Formatter\ScalarFormatter,在这个基础上,支持了格式化的数据转化,可以将数据自动转换成想要的格式,并且对于数据,支持dot操作符,后面的例子中会有介绍。
3、Processor
在Monolog中,Processor的主要作用就是给日志添加一些附带数据,简单点理解就是添加到extra字段中的数据
简单介绍后,我们直入主题
安装依赖:
composer require pianzhou/monolog