阅读量:2
一、日志配置
在 config/log.php 中设置日志通道、级别、路径等参数,如:
return [
'default' => 'file',
'channels' => [
'file' => [
'type' => 'file',
'path' => runtime_path('logs'), // 日志存储路径(可自定义)
'level' => ['info', 'error'], // 记录级别
'max_files' => 30, // 保留天数/文件数
'json' => false, // 是否JSON格式
],
// 可添加数据库、远程等通道
],
];
二、日志记录
使用 think\facade\Log 记录不同级别日志:
use think\facade\Log;
Log::info('用户登录', ['user_id' => 1]); // 信息日志
Log::error('支付失败', ['order_id' => 1001]); // 错误日志
三、日志查看
- 直接查看:通过文件管理器或命令行查看
runtime/logs目录下的日志文件。 - 命令行工具:使用
grep、awk筛选日志,或tail -f实时查看。
四、日志清理
- 手动清理:直接删除
runtime/logs下的旧日志文件。 - 定时任务:通过 Ubuntu 的
cron定期清理,例如每天凌晨删除7天前的日志:# 编辑定时任务 crontab -e # 添加以下内容(每天0点执行) 0 0 * * * find /path/to/project/runtime/logs -type f -mtime +7 -exec rm -f {} \;
五、高级管理
- 日志轮转:结合 Ubuntu 的
logrotate工具,配置按天/大小轮转日志,避免单个文件过大。 - 集中化管理:将日志发送至远程服务器(如ELK Stack),通过
rsyslog或自定义驱动实现。 - 权限控制:确保
runtime/logs目录权限为640,仅允许应用写入。
六、安全与优化
- 敏感信息过滤:避免在日志中记录密码、token 等敏感数据。
- 性能优化:高频日志场景使用
Log::batch(true)开启批量写入。
参考来源:
以上就是关于“thinkphp在ubuntu中的日志管理策略”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm