linux日志自动分割shell
随着服务器运行时间不断增加,各种日志文件也会不断的增长,虽然硬盘已经是白菜价了,但是如果当你看到你的一个日志文件达到数十G的时候是什么感想?下面的脚本实现了如下功能:
- 自动对日志文件进行分割
- 对分割后的日志文件进行压缩
# 以在阿里云上运行的nginx服务为例
date=`date +%Y-%m-%d_%H-%M-%S`
rotatename=/alidata/server/nginx/logs/access.${date}.log
logname=/alidata/server/nginx/logs/access.log
if [ -f "$rotatename" ]
then
sleep
date=`date +%Y-%m-%d-%H-%M-%S`
rotatename=/alidata/server/nginx/logs/access.${date}.log
fi
mv $logname $rotatename
# 告知应用程序重载配置文件(不进行次步骤的话日志会记录到重命名后的文件中),
# 不同的应用程序此步骤可能会不一样
kill -USR1 `cat /alidata/server/nginx/logs/nginx.pid`
# 等待1s,使重载配置文件生效
sleep
# gzip压缩,如果已经有了特别大的日志量,建议先手动使用split命令进行分割,
# 然后再分别进行压缩,否则会消耗大量cpu并影响线上业务
gzip $rotatename
在crontab中根据自己需要定时执行此shell即可。
如果再优化一下还可以把以日期为分割标准改为以文件大小为分割标准,此时定时任务的执行频率可以相对频繁一些。
linux日志自动分割shell的更多相关文章
- Nginx 日志自动分割
Nginx 的日志都是写在一个文件当中的,不会自动地进行切割,如果访问量很大的话,将导致日志文件容量非常大,不便于管理和造成Nginx 日志写入效率低下等问题.所以,往往需要要对access_log. ...
- Linux日志文件分割
经常有这样的情况,日志文件或者数据文件会变得很庞大,那么每次对这些目标文件的访问或者修改就会变得极其耗时.因而引发一些性能问题,但是如果对这些目标文件进行分割,限定其大小,那么每次的访问或者修改就会变 ...
- linux tomcat自动部署shell
#!/bin/bash #defined TOMCAT_HOME="/usr/java/tomcat/tomcat" TOMCAT_PORT=80 PROJECT ...
- Linux**系统实现log日志自动清理
Linux系统实现log日志自动清理 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...
- Linux日志切割方法[Logrotate、python、shell实现方式]
Linux日志切割方法[Logrotate.python.shell实现方式] 对于Linux系统安全来说,日志文件是极其重要的工具.不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分 ...
- Linux系统下分割tomcat日志
在Linux系统下,tomcat日志catalina.out并不会像window系统下,按日期进行重写备份,因此在Linux系统下会造成日志文件过大的情况,本文介绍采用 cronolog工具进行如在w ...
- 自动分割nginx服务的日志文件
nginx服务每天都会产生大量的日志信息,时间一长导致日志文件容量很大,会影响系统性能.通过以下shell代码,配合crontab定时执行可实现nginx日志定时分割的功能. #!/bin/bash ...
- 基于log4net的支持动态文件名、按日期和大小自动分割文件的日志组件
最近处理一个日志功能,用log4net的配置不能完全满足要求,所以在其基础上简单封装了一下,支持以下功能: 1 零配置 内置默认配置,引用dll后不需要添加或修改任何配置文件也可以使用 2 动态指定文 ...
- linux文件分割(将大的日志文件分割成小的)
linux文件分割(将大的日志文件分割成小的) linux下文件分割可以通过split命令来实现,可以指定按行数分割和安大小分割两种模式.Linux下文件合并可以通过cat命令来实现,非常简单. 在L ...
随机推荐
- IE6支持兼容min-width、max-width CSS样式属性
IE6支持兼容min-width.max-width CSS样式属性 让IE6支持max-width.IE6支持min-width样式 我们在写CSS的时候,常常会遇到让一个图片或一个布局不能超出设定 ...
- linux命令之fuser
Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME... [ - ] [ -n SPACE ] [ -SIGN ...
- NSURLErrorDomain Code=-999(转)
原文:http://www.henishuo.com/nsurlerrordomain-code-999/ 前言 今天有一个线上bug,是分配给提供H5的团队的,但是后台查不出来原因.于是让前端iOS ...
- xeno 实时性能测试 系统时钟1秒100个tick再测试
root@sama5d3-linux:/usr/bin ./latency -t0 -T25 -p100 == Sampling period: ...
- SpringBoot DataSource 配置说明
DataSource 配置说明 属性 说明 spring.dao.exceptiontranslation.enabled 是否开启PersistenceExceptionTranslationPos ...
- getopt--parse command line options
getopt解析命令行选项 getopt, getopt_long, getopt_long_only, optarg, optind, opterr, optopt - Parse command- ...
- Appendix A. Common application properties
Appendix A. Common application properties Prev Part X. Appendices Next URl链接:https://docs.spring.i ...
- Gogs http和ssh地址显示localhost的问题
问题描述: 如下图所示HTTP和SSH地址显示的是localhost而不是对应的域名或地址. 解决方案: 按以下方法修改Gogs配置文件并重启服务器 域名问题 RUN_USER = git DOMAI ...
- Math - Uva 11300 Spreading the Wealth
Spreading the Wealth Problem's Link ---------------------------------------------------------------- ...
- 【BZOJ】1660: [Usaco2006 Nov]Bad Hair Day 乱发节(单调栈)
http://www.lydsy.com/JudgeOnline/problem.php?id=1660 单调栈裸题..累计比每一个点高的个数即可. #include <cstdio> # ...