/usr/local/openresty/nginx/logs/access.log如何配置日志分割
时间: 2023-06-28 13:13:37 浏览: 204
您可以在 Nginx 配置文件中添加以下配置来实现日志分割:
```
# 定义日志格式
log_format access '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
# 定义日志路径和分割方式
access_log /usr/local/openresty/nginx/logs/access.log main;
# 每天分割日志
logrotate daily;
```
上述配置中,`log_format` 定义了日志的格式,`access_log` 指定了日志输出的路径和格式,`logrotate` 定义了日志的分割方式为每天分割。
此外,需要在 Linux 系统中配置定时任务,使用 `logrotate` 工具进行日志分割。您可以在 `/etc/logrotate.d` 目录下创建一个新的配置文件,例如 `/etc/logrotate.d/nginx`,并添加以下内容:
```
/usr/local/openresty/nginx/logs/*.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
create 0644 nginx nginx
}
```
上述配置中,`daily` 表示按天分割日志,`rotate` 表示保留几个旧日志文件,`compress` 表示使用 gzip 压缩旧日志文件,`delaycompress` 表示延迟压缩,`notifempty` 表示当日志文件为空时不进行分割,`create` 表示创建新的日志文件时使用指定的权限和用户组。
完成以上配置后,您可以重启 Nginx 服务,并使用 `crontab -e` 命令添加一个定时任务,以便在每天凌晨自动执行日志分割操作。例如:
```
0 0 * * * /usr/sbin/logrotate /etc/logrotate.d/nginx >/dev/null 2>&1
```
阅读全文