nginx日志按天分片是运维的基本要求,不仅可以减小文件大小,方便检索关键数据,也可以定时删除过期的日志。可是nginx和tengine默认并不支持文件分片,因此需要额外处理。
另外,日志分片需要借助 ngx_http_log_module 模块,默认通过yum安装的nginx并不携带此模块,需要额外编译。而tengine默认自带了ngx_http_log_module模块,因此建议使用者直接源码编译tengine即可。
日志分片的原理是利用命名管道。linux下一切皆文件,因此创建命名管道作为linux的访问日志,由第三方程序连接命名管道,获取数据后按时间进行分片。这里的第三方程序既可以是由使用者自己编写的处理程序,也可使用开源的软件,如 cronolog。下文采用cronolog实现日志分片。
time_local] "
status
http_referer" ' '"
http_x_forwarded_for"'; access_log /opt/logs/nginx/access.log main; ```
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有