点击上方“方志朋”,选择“设为星标”

做积极的人,而不是积极废人

很多Linux服务器里的应用程序都是无间断的输出日志,这对于服务器的硬盘是一个很大的考验。

通过以上方法,应用程序的日志会一直输出到日志文件myout.txt里,这个文件也会不断的增大,一直蚕食服务器硬盘。

但是,我们都知道,日志对于我们而言是非常重要的,一量应用程序出现bug,或者服务器宕机,我们必须通过日志文件来进行debug或进一步分析。所以,日志文件不能简单的一删了之。

这时,我们想到,如果能将日志文件切分该多好,这样我们可以留下重要的日志,而删掉不必要的日志。下面良许就来详细介绍这种方法。

我们可以每天都进行切分日志的操作,那要这样的话,为了避免混淆,我们切分出来的日志都应该带上日期。当然日期我们可以通过以下语句获取:

current_date=`date -d "-1 day" "+%Y%m%d"`

date -d "-1 day"表示获取前一天的日期,就是说我们今天操作的话是切割昨天的日志。+%Y%m%d是具体的日期格式,也就是年月日格式,比如:20181005。

接下来,我们再切割日志。

split  -b 65535000 -d -a 4  myout.txt  ./log/log_${current_date}_

其中,65535000是60M,也就是日志文件按60M大小进行切割,可自定义大小。-d -a 4表示文件后缀是4位。我们将文件切割后要按次序进行编号,比如0000,0001,0002……这个4就代表编号的位数。

再之后的./log/log_${current_date}_就是切割后日志文件的前缀,里面就带入了当前日期。所以,最终的输出格式类似于:log_20181005_0001。

日志文件切割完之后,就可以将日志文件删除了,否则就失去切割文件的意义了。删除的方法可以用以下方式:

cat /dev/null > nohup.out

将以上这些命令写在一个脚本里,每天运行它,就可以将日志文件切割成若干分,便于我们排查。完整的代码如下:

#!/bin/bashcurrent_date=`date -d "-1 day" "+%Y%m%d"`
split -b 65535000 -d -a 4 /home/alvin/myout.txt   /home/alvin/log/log_${current_date}_
cat /dev/null > nohup.out

热门内容:    

  • RateLimiter 源码分析(Guava 和 Sentinel 实现)

  • 干货 | 阿里巴巴混沌测试工具ChaosBlade两万字解读

  • API 网关从入门到放弃

  • 面试必备:Java线程池解析

  • 挑战10个最难回答的Java面试题(附答案)

  • 跳来跳去,到底去大公司还是小公司?

  • 史上最全的 Linux Shell 文本处理工具集锦,快收藏!

  • 为什么推荐 Java 程序员使用 Google Guava 编程

喜欢就点个"在看"呗^_^

Linux下日志文件过大解决方案相关推荐

  1. SQLServer LDF日志文件过大解决方案 2021-09-26

    LDF日志文件过大解决方案:成功将182G的日志收缩为14M. -- 数据库恢复模式 设置为 简单 ALTER DATABASE DataBaseName SET RECOVERY SIMPLE -- ...

  2. linux下日志文件的查找(tail和grep)

    grep的使用: grep参数 -e: 使用正则搜索 -i: 不区分大小写 -v: 查找不包含指定内容的行 -w: 按单词搜索 -c: 统计匹配到的次数 -n: 显示行号 -r: 逐层遍历目录查找 - ...

  3. 解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题

    解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题 参考文章: (1)解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题 (2)http ...

  4. linux系统 mysql日志文件太大。造成数据库无法正常启动怎么解决

    linux系统 mysql日志文件太大.造成数据库无法正常启动怎么解决 删除mysql日志: 执行:/usr/local/mysql/bin/mysql -u root -p 输入密码登录后再执行:r ...

  5. linux rm无法删除权限不够,linux下的文件用root用户rm -rf命令无法删除解决方案

    linux下的文件用root用户rm -rf命令无法删除解决方案(可能文件处在挂载的磁盘阵列(U盘,光盘.硬盘等),而磁盘阵列在别的服务器上,以下解决步骤和方案可能只是针对这一种情况,不保证解决所有类 ...

  6. linux数据库log文件太大,SqlServer日志文件过大的处理方法

    最近遇到某个MSSqlServer2008 数据库的日志文件过于庞大,数据文件4G,日志文件达到80G. 日志文件这么大的原因还得从数据库的恢复模式说起: 三种恢复模式:简单恢复模式.完整恢复模式和大 ...

  7. 切割 Tomcat 的 catalina.out 文件,解决日志文件过大的问题

    为什么80%的码农都做不了架构师?>>>    Tomcat 下日志文件 catalina.out 过大,几百兆或几十个G,进而造成再也无法写入更多的日志内容,至使 Tomcat 无 ...

  8. Linux下各文件夹的结构说明及用途介绍(转载)

    linux下各文件夹的结构说明及用途介绍: /bin:二进制可执行命令. /dev:设备特殊文件. /etc:系统管理和配置文件. /etc/rc.d:启动的配 置文件和脚本. /home:用户主目录 ...

  9. linux 下删除文件的 操纵

    linux   下删除 文件的 方法::: 1-  remove remove(删除文件) 相关函数 link,rename,unlink 表头文件 #include<stdio.h> 定 ...

最新文章

  1. MPB:邓晔、王尚等-​环境样本中的细菌总量测定—流式细胞法
  2. 重新探讨一下《APEX英雄》系统设计的亮点
  3. Sleep() sleep() usleep()
  4. C++ std::move()和完美转发
  5. U大师U盘装系统——原版XP系统安装(V1.2.0版)
  6. WebStorm功能特点以及使用指南
  7. (十八)其他数据库对象,视图,序列
  8. “恒德”机场智能应急指挥调度系统解决方案
  9. 个人取得工资、薪金所得应当如何缴纳个人所得税
  10. dell服务器配置信息,DELL服务器配置(710)
  11. 武汉市星创天地申报条件和程序
  12. 如何批量抠图换背景?这两个方法可以做到
  13. 岩板铺地好吗_岩板铺客厅地面好吗 比800*800的瓷砖更美观又大气?
  14. 服务器准系统diy,网易科技频道--DIY自己的低价“准系统”:之MICRO ATX主板篇
  15. html 设置响应X-frame,X-Frame-Options(点击劫持)漏洞分析及web配置修复
  16. LaTex bib引用知网论文NoteExpress格式文献 —— cnki2bib
  17. 国培_阶段性学习总结
  18. 【IOS】Object-C 中的Selector 概念
  19. 暴雪将终止与网易合作:《魔兽世界》面临在大陆暂停服务
  20. java:上传微信临时文件的素材

热门文章

  1. Apache2.4部署python3.6+django2.0项目
  2. 透明代理Transparent Proxy
  3. 大话设计模式读书笔记--4.代理模式
  4. 在tomcat中用jndi配置数据源启动java web程序
  5. Io流的字节流与缓冲流
  6. 实现一个简单的投票功能
  7. 【怎样写代码】参数化类型 -- 泛型(六):泛型接口
  8. Matlab与线性代数 -- 零矩阵
  9. 图像补运算:MatIterator_迭代器反色处理
  10. 【ACM】杭电OJ 2149