1、进入到nginx的日志目录,我们可以看到下图的三个文件
2、我们打开配置文件,可以设置自己的日志文件。如下,配置好后保存,重启nginx。
server { listen 8000; server_name www.wuaipic.cn; location / { root wuaipic; index index.html index.htm; } access_log logs/wuaipic.log main; }
注:其中 main就是定义的日志的格式
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
3、重启nginx后,我们在访问www.wuaipic.cn的时候就会创建一个wuaipic.log文件,并且里面记录了我们的访问日志。
下图为日志文件内容。
4、我们还可以监控实时日志。输入命令
tail -n 100 -f wuaipic.log
这样,我们就可以实时查看日志了,按ctrl+z退出日志查看。
5、到此,日志的配置就完成了,当我们配置多个server的时候,就可以配置多个日志文件进行区分了。
6、当我们在查找错误的时候,需要进行日志的切分备份,那么我们就要写一个叫做 log.sh 的脚本来运行,进行日志切分备份。
BASE_DIR=/usr/local/nginx //基础目录 BASE_FILE_NAME=wuaipic.log //要备份的文件 CURRENT_PATH=$BASE_DIR/logs BAK_PATH=$BASE_DIR/datalogs //备份路径 CURRENT_FILE=$CURRENT_PATH/$BASE_FILE_NAME BAK_TIME=`/bin/date -d yesterday +%Y%m%d%H%M` //备份时间 BAK_FILE=$BAK_PATH/$BAK_TIME-$BASE_FILE_NAME echo $BAK_FILE $BASE_DIR/sbin/nginx -s stop //停止nginx mv $CURRENT_FILE $BAK_FILE //移动备份文件到指定目录 $BASE_DIR/sbin/nginx //启动nginx
这里我们设置的是每分钟备份一次 %Y%m%d%H%M`
创建好脚本之后我们把脚本移动到 /usr/local/nginx/sbin目录下,然后我们执行
chmod 777 log.sh
我们在/usr/local/nginx下创建 datalogs文件夹,执行 crontab -e 命令
然后输入:
*/1 * * * * sh /usr/local/nginx/sbin/log.sh
然后保存退出,这样,日志的剪切备份就开始了。进入datalogs文件夹 运行 ll命令进行查看,每分钟备份一次。