Linux中Apache日志切片和轮询

2018-06-04   网络,编程

  对于服务器的维护,日志文件可以说是极其重要了,但是如果一个网站访问量足够大的时候,那么是否要担心访问日志撑爆磁盘呢?
答案是肯定的,不过如果对日志文件进行切片和轮询,那么就可以不用再担心这个问题了。

  首先,我们要知道Apache的日志文件路径,比如说:/usr/local/apache2/logs/,Apache默认的日志文件有三个,一个访问日志access_log,一个错误日志error_log,另一个暂不做介绍。为了不让服务器出现以上问题,我们可以只让Apache保留某些时间段的日志,比如说只保留一个月。日志切片即每天的日志保存到一个单独的文件内,以免文件过大,影响查阅。
  然后,这里用到系统自带的工具logrotate,配置文件路径一般在/etc/logrotate.conf,打开后可以看到以下内容:

# see "man logrotate" for details
# rotate log files weekly
weekly

# keep 4 weeks worth of backlogs
rotate 4

# create new (empty) log files after rotating old ones
create

# use date as a suffix of the rotated file
dateext

# uncomment this if you want your log files compressed
#compress

# RPM packages drop log rotation information into this directory
include /etc/logrotate.d

# no packages own wtmp and btmp -- we'll rotate them here
/var/log/wtmp {
    monthly
    create 0664 root utmp
    minsize 1M
    rotate 1
}

/var/log/btmp {
    missingok
    monthly
    create 0600 root utmp
    rotate 1
}
# system-specific logs may be also be configured here.

然后把Apache的日志文件路径添加到最后,填写以下内容

#Apache日志路径
/usr/local/apache2/logs/access_log{
    daily
    #每天保存一次
    rotate 30
    #轮询30天
}
/usr/local/apache2/logs/error_log{
    daily #同上
    rotate 30
}

保存之后以后每天都会生成当天的日志文件,如图:
QQ截图20180604103416.png
不过只会保存30天,30天之后第一天的日志文件就自动清除掉了。这个要根据个人需求来调整了。

标签: 网络

上一篇:音乐分享[Unity(Mashup) -Clive/TheFatRat] 下一篇:极简风格响应式主题Attention


评论卡

仅有一条评论

  1. 梁飞
    梁飞
    6月4日

    现学现用 牛逼了