Linux大日志分析

Linux中很多应用程序日志即使每天做日志切割还是会很大

这是对日志文件进行切割在进行分析会更好

我们可以使用split命令对日志进行切割操作

 

split命令:将指定文件切割成小文件

-d:使用数字作为文件的后缀(默认以字母作为后缀)

-b:指定切割文件的大小(默认单位是字节)

-l:指定切割的行数作为切割的依据

-v:显示详细信息

 

实例:

1. 将xiaoshuo.txt文件,切分为每个为5M的小文件

 

 

2. 将passwd文件每5行切割为一个文件

 

 实际应用到日志切割

  

#以/var/log/messages系统日志为例

#编写日志切割脚本
vim /opt/shell/messages.sh

#!/bin/bash

d=$(date -d "-1 day" +%F)  #指定日期

[ -d /var/logbak ] || mkdir /var/logbak  #是否存在备份目录没有创建

if [ -f /var/log/messages ];then
        split -d -b 74752 /var/log/messages /var/logbak/messages-$d-  #切割日志每个76kb,小编日志比较小
        cat /dev/null > /var/log/messages  #清空日志
fi

#将脚本设置为定时任务

  crontab -e

  *0 *1 * * * /usr/bin/sh /opt/shell/messages.sh  #每天1点执行

 

 

运行脚本后的执行结果

 

posted @ 2020-02-06 19:00  风之老凌  阅读(793)  评论(0编辑  收藏  举报