yzh52521 / think-log-driver
require think-log-driver
v1.0.4
2023-07-10 03:16 UTC
Requires
- php: >=7.1.0
- ext-json: *
- topthink/framework: >=6.0
README
think-log-driver
依赖
适用于thinkphp6.x,thinkphp8.x
php: >=7.1
安装
- 安装
think-log-driver
composer require yzh52521/think-log-driver
使用
- 更改配置
在config/log.php
中的配置修改
// 日志记录方式 // 日志通道列表 'channels' => [ 'file'=>[], 'database' => [ // 日志记录方式 'type' => 'Database', // 大于0.05秒的sql将被记录 'slow_sql_time' => 0.5, // 记录日志的数据库配置,即在database.php中的driver // 如果设置该值为'default',则使用系统数据库的实例 'db_connect' => 'default', //mongodb // 记录慢日志查询的数据表名 'db_table' => 'log_sql', // 忽略的操作,在以下数据中的操作不会被记录 'action_filters' => [ // 'index/Index/lst' ], // 日志保存目录 'path' => '', // 单文件日志写入 'single' => false, // 独立日志级别 'apart_level' => [], // 最大日志文件数量 'max_files' => 0, // 使用JSON格式记录 'json' => false, // 日志处理 'processor' => null, // 关闭通道日志写入 'close' => false, // 日志输出格式化 'format' => '[%s][%s] %s', // 是否实时写入 'realtime_write' => false, ], ],
- 创建数据库
用于记录日志的mysql数据表,如果使用mongodb则无需创建
CREATE TABLE `th_log_sql` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `host` CHAR(200) NOT NULL DEFAULT '' COMMENT '请求的Host', `uri` CHAR(200) NOT NULL DEFAULT COMMENT '请求的URL', `ip` CHAR(50) NOT NULL DEFAULT '' COMMENT 'IP', `method` CHAR(50) NOT NULL DEFAULT '' COMMENT '提交方式', `app` CHAR(30) NOT NULL DEFAULT '' COMMENT '应用', `controller` CHAR(30) NOT NULL DEFAULT '' COMMENT '控制器', `action` CHAR(50) NOT NULL DEFAULT '' COMMENT '方法', `create_time` INT(11) NOT NULL DEFAULT '0', `create_date` DATETIME NULL DEFAULT NULL, `runtime` DECIMAL(10,3) UNSIGNED NOT NULL DEFAULT '0.000', `sql_list` TEXT NULL, `param` TEXT NULL, PRIMARY KEY (`id`), INDEX `runtime` (`runtime`) ) COLLATE='utf8_general_ci' ENGINE=InnoDB AUTO_INCREMENT=1 ;