1、nginx服务必须起着,服务启动了才会有nginx.pid
2、nginx日志目录下的简介
- nginx的产生的相关的日志默认是在/usr/local/nginx/logs的目录里面
注意:日志的开关在Nginx的配置文件nginx.conf文件中设置,产生的日志都是可以选择性关闭的,但是默认是打开的。
-
access.log:该日志文件是用来记录客户在访问该nginx时产生的每一个请求,格式可以自定义,通过访问日志就可以得到用户地域来源跳转来源,使用终端,某个URL访问等相关信息。
-
error.og:错误日志,主要是记录客户端访问Nginx错误时产生的日志,格式不支持自定义,通过错误日志。可以得到系统的某个服务或者server的性能瓶颈。因此将错误日志好好利用,可以得到很多有价值的信息。
-
nginx.pid:该日志文件主要是用来记录nginx的master进程的pid,当nginx服务启动时,会自动在该目录下生成该进程的pid文件。
3、日志及其日志备份
1.日志的自动生成
- 默认的在每次启动nginx服务的时候,都会在/usr/local/nginx/los目录下生成access.log日志,但是在每次对服务reopen重新打开时也会在nginx重新生成access.log日志文件。
验证如下:
此时我已经编辑了backup.sh、生成了oldlogs,这两步在下面的操作
2.实现在每日的凌晨自动备份nginx产生的日志
编写脚本实现nginx日志的自动备份:
vim backup.sh编辑内容如下:
#!/bin/bash
LOG_PATH=/usr/local/nginx/logs/oldlogs
CUR_LOG_PATH=/usr/local/nginx/logs
YESTERDAY=$(date +%F -d -1day)
mv $CUR_LOG_PATH/access.log $LOG_PATH/${YESTERDAY}_access.log
mv $CUR_LOG_PATH/error.log $LOG_PATH/${YESTERDAY}_error.log
kill -USR1 $( cat /usr/local/nginx/logs/nginx.pid)
添加定时命令文件实现每天凌晨的nginx服务的自动备份
如果在执行crontab -e后编辑内容如下:
编辑完成之后保存退出报错 no crontab for root - using an empty one
解决办法可以是crontab -e编辑后强制保存退出就可以了
4、每天检查/usr/local/nginx/logs/oldlogs是否自动备份每日日志