Nginx高性能服务器安装、配置、运维 (6) —— Nginx日志及日志分割
七、Nginx日志及日志分割
(1)Nginx日志文件
查看Nginx配置文件:
找到access_log,yum安装默认存储在/var/log/nginx目录下,且默认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"';
以上含义:
访问IP - 访问用户[访问时间] 请求方法(GET/POST) 请求体body长度 referer来源信息
http-user-agent用户代理/蜘蛛 被转发的请求的原始IP
查看默认main格式的日志文件:
(2)Nginx日志分割
Nginx不同于apache,需要将其日志进行定期切割,不然日志文件的日积月累会越加庞大,导致读取缓慢,为此需要做定时切割任务。
实验性步骤:
a.查看 日志文件位置
b.撰写日志分割脚本
脚本代码:
base_path='/var/log/nginx' #设定默认日志文件所在目录
log_path=$(date -d yesterday +"%Y%m") #设定新日志文件目录
day=$(date -d yesterday +"%Y%m%d%H%M") #设定日期变量
mkdir -p $base_path/logs/$log_path #创建日志存放目录(按月)
mv $base_path/access.log $base_path/logs/$log_path/access_$day.log #移动Nginx默认日志文件并按date变量重命名
kill -USR1 `cat /var/run/nginx.pid` #重读日志
c.Crontab 定时执行:
代码:*/1 * * * * sh /var/log/nginx/cutlog.sh #每分钟执行一次
d.每隔1分钟刷新访问服务器,发现自动化脚本已被执行,每分钟生成一个日志文件:
最终自动化执行脚本代码:
base_path='/var/log/nginx'
log_path=$(date -d yesterday +"%Y%m")
day=$(date -d yesterday +"%Y%m%d")
mkdir -p $base_path/logs/$log_path
mv $base_path/access.log $base_path/logs/$log_path/access_$day.log
kill -USR1 `cat /var/run/nginx.pid`
01 00 * * * /var/log/nginx/cutlog.sh #设定每天凌晨0点执行
(本文由kayvan编辑发表,内容主要收集于互联网,转载请注明出处:http://www.cnblogs.com/kayvan)
Nginx高性能服务器安装、配置、运维 (6) —— Nginx日志及日志分割的更多相关文章
- Nginx之https配置 - 运维笔记 (http->https强转)
一.Nginx安装(略)安装的时候需要注意加上 --with-http_ssl_module,因为http_ssl_module不属于Nginx的基本模块.Nginx安装方法: # ./configu ...
- nginx高性能WEB服务器系列之九--nginx运维故障日常解决方案
nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二 ...
- 运维开发笔记整理-django日志配置
运维开发笔记整理-django日志配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Django日志 Django使用python内建的logging模块打印日志,Pytho ...
- Nginx高性能服务器安装、配置、运维 (5) —— Nginx虚拟主机配置
六.Nginx虚拟主机配置 建立基于域名的虚拟主机: (1)建立基于域名的虚拟主机配置文件(以abc.com为例): (2)更改虚拟主机配置文件: 更改配置如下(更改部分即可): server { l ...
- Nginx高性能服务器安装、配置、运维 (4) —— Nginx服务、架构及其信号
五.Nginx服务.架构及其信号 (1)Nginx服务的查看 1.netstat -antp 查看Nginx是否在80端口运行: 2.ps aux|grep nginx 查看nginx相关进程: 发现 ...
- Nginx高性能服务器安装、配置、运维 (3) —— Nginx配置详解
四.Nginx 配置详解 YUM方式安装的Nginx默认配置文件放在/etc/nginx目录下,使用Vim编辑/etc/nginx/nginx.conf: ---------------------- ...
- Nginx高性能服务器安装、配置、运维 (2) —— Nginx安装
三.Nginx 安装 使用SecureCRT以Root身份登录阿里云,在安装Nginx前先做好阿里云磁盘挂载 -------------- 挂载磁盘 -------------- 1.df -h #显 ...
- 企业运维实践-Nginx使用geoip2模块并利用MaxMind的GeoIP2数据库实现处理不同国家或城市的访问最佳实践指南
关注「WeiyiGeek」公众号 设为「特别关注」每天带你玩转网络安全运维.应用开发.物联网IOT学习! 希望各位看友[关注.点赞.评论.收藏.投币],助力每一个梦想. 本章目录 目录 0x00 前言 ...
- [运维笔记] Nginx编译安装
yum -y install pcre-devel.x86_64 yum -y install openssl openssl-devel.x86_64 useradd www -s /sbin/no ...
随机推荐
- Maprduce重写参考
Maprduce数据流走向图: 流程解释 Input files 功能描述:存储在HDFS中的文件数据 InputFormat 功能描述:1 ...
- Colored Sticks (字典树哈希+并查集+欧拉路)
Time Limit: 5000MS Memory Limit: 128000K Total Submissions: 27704 Accepted: 7336 Description You ...
- Grid表格属性
<Grid> <Grid.ColumnDefinitions> <!--添加列--> <ColumnDefinition Width="/> ...
- bzoj2286
很明显,20%=mincut 40%=每次暴力树形dp那么正解是什么呢?不难发现∑ki<=500000,也就是每次询问的复杂度都要跟k有关从树形dp工作的角度来看,确实有很多点我们根本就没必要访 ...
- [HDU 1203] I NEED A OFFER!
I NEED A OFFER! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)T ...
- openssl的CRYPTO_set_locking_callback
openssl可以在多线程环境下使用,但前提是向openssl提供线程锁设施,通过CRYPTO_set_locking_callback设置. 在一些复杂软件环境环境中,可能存在多个上层模块同时使用o ...
- JavaScript里的类和继承
JavaScript与大部分客户端语言有几点明显的不同: JS是 动态解释性语言,没有编译过程,它在程序运行过程中被逐行解释执行JS是 弱类型语言,它的变量没有严格类型限制JS是面向对象语言,但 没有 ...
- Android 系统日期时间的获取
import java.text.SimpleDateFormat; SimpleDateFormat formatter = new SimpleDateFormat ("yyyy年MM月 ...
- CLR via C# 读书笔记 6-2 不同AppDomain之间的通信 z
跨AppDomain通信有两种方式 1.Marshal By reference : 传递引用 2.Marshal By Value : 把需要传递的对象 通过序列化反序列化的方式传递过去(值拷贝) ...
- web测试中,各类web控件测试点总结
一 .界面检查 进入一个页面测试,首先是检查title,页面排版,字段等,而不是马上进入文本框校验 1.页面名称title是否正确 2.当前位置是否可见 您的位置:xxx>xxxx 3.文字格 ...