php - 如何使用 logrotate 在 laravel 中旋转日志?
问题描述
几个月前部署了我的 laravel 应用程序,最近发现我的应用程序无法写入日志,因为我的磁盘已满。当我检查我发现 laravel.log 文件几乎是巨大的。我想知道如何使用 logrotate 旋转 laravel 日志。
解决方案
转到/etc/logrotate.d并创建一个新的配置文件。
cd /etc/logrotate.d
sudo touch laravel_rotate
添加日志文件位置和一些设置。
log/file/dir/laravel_log.log {
monthly
missingok
rotate 12
compress
notifempty
create 755 www-data www-data
}
设置说明:
- 每月:将每月创建备份
- missingok : 如果文件丢失则忽略该文件
- rotate 12:保留一年的备份
- notifempty:如果日志为空,则不轮换日志
- compress:压缩日志文件
- create:创建具有以下权限的替换日志文件
要测试这个新配置,运行sudo logrotate --force laravel_rotate
推荐阅读
- laravel - 如何在测试中获取使用 Laravel Livewire 上传的文件的哈希名称
- javascript - 类实例化过程
- javascript - 数组需要根据键值对删除重复对象并返回 sum [fiddle]
- google-chrome - Chrome.identity 无需提供凭据即可完美运行
- javascript -
- python - Splitting string by more empty lines
- makefile - Makefile依赖而不声明规则?
- r - 如何绘制按变量级别拆分的条形图,同时通过多元回归控制其他变量?
- javascript - will react native ios simulator throw an error if https request is not secure? (certificate is invalid)
- r - R中的后缀前缀和前缀后缀