Apache日志切割shell脚本

Apache、Nginx等web服务器日志量巨大,如果不进行切割的话会导致日志文件过大,不容易清理,而且给日志分析收集工作带来麻烦。下例为Apache日志切割脚本,nginx等其他web服务同样适用

代码:

#!/bin/bash

apache_log_path="/usr/local/apache/logs"     #指定日志存储位置

log_filenames=`/bin/ls $apache_log_path`

save_days=7  #定义保留7天内日志

#按照日期时间存储日志

/bin/mv $apache_log_path/access_log  $apache_log_path/access_log_`date +%F`.log

/usr/local/apache/bin/apachectl -k graceful #重新加载服务

# 查找7天前的日志文件并删除

find $apache_log_path -mtime +$save_days -exec rm -rf {} \;



ok,将脚本放到crontab定时执行就Ok了,其他web软件同样适用。注意日志文件重命名后需要重新加载服务,否则造成异常

时间: 2024-10-17 04:19:43

Apache日志切割shell脚本的相关文章

nginx日志切割shell脚本

#!/bin/bash #function:cut nginx log files shell #cp /usr/local/nginx/logs/access.log /usr/local/nginx/logs/access.log.bak log_cut_path="/var/log/nginx" log_files_path="/usr/local/nginx/logs/" log_files_dir=${log_cut_path}$(date -d &quo

tomcat 日志切割shell脚本

vim tomcat_cut.sh #!/bin/bash log_path=/opt/tomcat8080/logs d=`date +%Y-%m-%d` d4=`date -d'30 day ago' +%Y-%m-%d` cd ${log_path} && cp catalina.out $log_path/catalina.out.$d.log echo > catalina.out rm -rf $log_path/catalina.out.${d4}.log # chmo

nginx 日志切割 shell脚本

# ######  My  Shell Code ############# #! /bin/bashdate=`date +%Y%m%d`logpt=/root/nginx/logs/access.loglogbk=/data/ng_log/$datelogpid=/root/nginx/logs/nginx.pidlogtag=$logbk/`date +%Y%m%d%H%m%S`if test ! -d $logbk;then mkdir -p $logbk;fitest -f $logp

自动发送密码抓取远程日志用Shell脚本如何实现?

在linux系统中,如何用shell脚本抓取远程日志?分析线上的日志会有一个困境,机器太多,如果每台都登录上去看不太现实,但是下载下来更麻烦因为每台SCP都要求输入密码.于是我便写了一个自动抓取远程日志的脚本,实现在基本功能. 代码: #!/usr/bin/expect -f if { $argc !=1 && $argc !=2 } {send_user "没有输入远程日志文件名.\n"send_user "格式是:get.sh ${remote_log}

自动清除过期的Tomcat日志的shell脚本

(友好提示:本文属于初级shell编程,高手可忽略此文) 在产品环境运行过程中,每天会切割产生按天计的日志文件,这些日志文件一般在过一定期限以后就没什么用处了,因此需要定期删除掉这些过期的日志文件.本文以CentOS下的Tomcat为应用环境基础,通过shell脚本的方式定时自动删除过期的Tomcat日志文件,以减少磁盘空间的占用.减轻管理员的日常工作. 一.shell脚本代码: #!/bin/bash # # filename: clearExpiredTomcatLogs.sh # # FU

Apache下通过shell脚本提交网站404死链

网站运营人员对于死链这个概念一定不陌生,网站的一些数据删除或页面改版等都容易制造死链,影响用户体验不说,过多的死链还会影响到网站的整体权重或排名. 百度站长平台提供的死链提交工具,可将网站存在的死链(协议死链.404页面)进行提交,可快速删除死链,帮助网站SEO优化.在提交死链的文件中逐个手动填写死链的话太麻烦,工作中我们提倡复杂自动化,所以本文我们一起交流分享Apache服务中通过shell脚本整理网站死链,便于我们提交. 1.配置Apache记录搜索引擎 Apache是目前网站建设最为主流的

LAMP搭建9:Apache日志切割

网站的访问日志增长很快,如果保存在一个文件中,不进行切割,那么很快就会撑爆服务器的磁盘,我们需要对其进行切割,并且定期删除无用的日志,以保证磁盘的合理使用. 1.编辑虚拟主机配置文件 [[email protected] important]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 2.去掉访问日志配置行前面的注释符# <VirtualHost *:80> DocumentRoot "/tmp/123" Se

Apache日志切割及不记录指定类型日志

1.自带rotatelogs日志切割 ■ rotatelogs 日志轮询说明 ___________________________________________________________ 语法 rotatelogs [ -l ] logfile [ rotationtime [ offset ]] | [ filesizeM ] 选项 -l    使用本地时间代替GMT时间作为时间基准.注意:在一个改变GMT偏移量(比如夏令时)的环境中 使用-l会导致不可预料的结果. logfile

apache 日志切割

由于网站访问日志过于大,因此采用日志切割功能来对apache日志进行切割. 方法一: 使用 cronolog 为每一天建立一个新的日志CustomLog "|bin/cronolog logs/access_%Y%m%d.log" combined 也可以按小时 CustomLog "|bin/cronolog logs/access_%Y%m%d%h.log" combined 方法二:使用 rotatelogs 每一天记录一个日志CustomLog "