千家信息网

日志分割小实操——程序猿都爱看的日志分割

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,Apache日志分割随着网站的访问量增加,默认情况下Apache的单个日 志文件也会越来越大●日志文件占用磁盘空间很大●查看相关信息不方便对日志文件进行分割●Apache自带rotatelogs分割工
千家信息网最后更新 2025年01月23日日志分割小实操——程序猿都爱看的日志分割

Apache日志分割

随着网站的访问量增加,默认情况下Apache的单个日 志文件也会越来越大
●日志文件占用磁盘空间很大
●查看相关信息不方便
对日志文件进行分割
●Apache自带rotatelogs分割工具实现
●第三方工具cronolog分割

实验环境

第一步:安装Apache服务
rotatelogs工具是Apache服务就自带的,它在/usr/sbin 目录中

[root@localhost ~]# yum install httpd -y[root@localhost ~]# cd /usr/sbin[root@localhost sbin]# ls rotate*       //检索rotatelogs工具rotatelogs

第二步:配置DNS服务

[root@localhost sbin]# vim /etc/httpd/conf/httpd.conf...Listen 192.168.235.129:80       //添加监听地址#Listen 80                              //注释掉IPV6的监听...ServerName www.bdqn.com:80          //修改域名[root@localhost httpd]# systemctl stop firewalld.service [root@localhost httpd]# setenforce 0[root@localhost sbin]# systemctl start httpd            //启动Apache服务

第三步:查看日志文件
1.先查看access_log 和 error_log 是否生成

[root@localhost sbin]# cd /var/log/httpd/           //进入Apache的日志目录[root@localhost httpd]# lsaccess_log  error_log//access_log 为访问日志,error_log为错误日志

2.使用客户机查看网页
先将客户机的DNS服务去地址改为服务端的IP地址192.168.235.129

打开浏览器输入服务端的IP地址即可访问网页

再查看一下服务日志

[root@localhost httpd]# cat access_log      //查看访问日志192.168.235.140 - - [25/Oct/2019:09:33:46 +0800] "GET / HTTP/1.1" 403 4897 "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)".....//可以看到IP为192.168.235.140的客户机的服务记录

由于日志文件过于多且不便于归档检索,我们便可以用到Apache 自带的 rotatelogs 分割工具

第一步:修改Apache 的主配置文件httpd.conf

[root@localhost httpd]# cd conf         //进入conf目录[root@localhost conf]# vim httpd.conf           //编辑httpd.conf文件#ErrorLog "logs/error_log"          //注释掉掉182行内容ErrorLog "| /usr/sbin/rotatelogs -l logs/www.bdqn.com.error_%Y%m%dlog 86400"//在183 行添加此行条目 ,按年月日分割日志    CustomLog "| /usr/sbin/rotatelogs -l logs/www.bdqn.com.error_%Y%m%dlog 86400" combined//修改第218 行的条目引号中内容为/usr/sbin/rotatelogs -l logs/www.bdqn.com.error_%Y%m%dlog 86400即可[root@localhost conf]# systemctl stop httpd     //停止服务[root@localhost conf]# systemctl start httpd        //再启动服务[root@localhost conf]# ls /var/log/httpd                access_log  error_log  www.bdqn.com.error_20191025log//查看日志目录,即可看到生成的www.bdqn.com.error_20191025log日志文件//使用date -s 命令修改日期在进行查看[root@localhost httpd]# date -s 10/26/192019年 10月 26日 星期六 00:00:00 CST[root@localhost httpd]# systemctl stop httpd[root@localhost httpd]# systemctl start httpd[root@localhost httpd]# ls /var/log/httpdaccess_log  www.bdqn.com.error_20191025logerror_log   www.bdqn.com.error_20191026log

我们也可以使用第三方的 cronolog工具进行日志分割
环境准备:cronolog工具包分享地址(无密码):
https://pan.baidu.com/s/16kyAuOcocRWJKXyXfSVsLg

1.将工具包共享到Linux中

[root@localhost ~]# smbclient -L //192.168.10.37/       //远程共享    Sharename       Type      Comment    ---------       ----      -------    ADMIN$          Disk      远程管理    C$              Disk      默认共享    D$              Disk      默认共享    IPC$            IPC       远程 IPC    LAMP            Disk      [root@localhost ~]# mount.cifs //192.168.10.37/LAMP/ /opt///挂载下载的工具文件夹[root@localhost ~]# cd /opt[root@localhost opt]# rpm -ivh cronolog-1.6.2-14.el7.x86_64.rpm //安装工具包[root@localhost opt]# cd /usr/sbin          //进入sbin目录[root@localhost sbin]# ls crono*            //查看是否有cronolog文件cronolog

2.修改httpd的配置文件

[root@localhost sbin]# vim /etc/httpd/conf/httpd.confErrorLog "| /usr/sbin/cronolog logs/www.bdqn.com.error_%Y%m%d.log"//将182行的条目引号中内容替换为| /usr/sbin/cronolog logs/www.bdqn.com.error_%Y%m%d.log即可CustomLog "| /usr/sbin/cronolog logs/www.bdqn.com.access_%Y%m%d.log" combined//将217 行的条目条目引号中内容替换为| /usr/sbin/cronolog logs/www.bdqn.com.access_%Y%m%d.log即可

3.查看日志文件

[root@localhost sbin]# systemctl start httpd        //启动服务[root@localhost sbin]# ls /var/log/httpd/               //查看日志目录即可查看到生成的日志文件www.bdqn.com.error_20191025.log

以上就是我们的Apache日志分割的全部内容,谢谢小伙伴们的支持

0