Linux日志自动清理方案

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
大数据开发治理平台 DataWorks,不限时长
简介: Linux日志自动清理方案

Linux日志自动清理方案

平时主要处理两种情况:

  • 只生成一个日志文件,需要每天切割,定期删除太旧的。采用 logrotate 定期切割的方案。
  • 每天生成一个日志文件,定期删除太旧的。采用 crontab 定期删除的方案。

logrotate 定期切割

logrotate 是 Linux 自带的一个日志切割工具,不需要安装,只需要添加配置文件。

  1. 用 root 权限在 /etc/logrotate.d/ 目录下创建一个配置文件 /etc/logrotate.d/myproject ,文件名任意自定,内容如下例:

    # 指定待切割的日志文件的绝对路径(如果有多个路径,则用空格分隔)
    /home/zhonghong/*.log {
         
        # 切换到指定的用户、用户组来执行切割任务
        su zhonghong zhonghong
    
        # 每天轮询一次,切割生成一个归档日志
        daily
        # 最多保留 7 个归档日志
        rotate 7
        missingok
        notifempty
    
        dateext
        dateformat -%Y-%m-%d
        extension .log
    
        copytruncate
    }
    

    配置文件中的注释必须独占一行。

  2. 执行 logrotate /etc/logrotate.d/myproject -f 尝试切割一次,看效果如何。

crontab 定期删除

  1. 执行crontab -e,加入一条定时任务:

    0 12 * * *     find /home/zhonghong/myproject/logs      ! -mtime -7 | xargs rm -f
    

    这会每天中午12点删除指定目录下,超过 7 天未修改的文件。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
26天前
|
Linux Shell
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
78 1
|
1月前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
29 0
|
1月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
51 0
|
19天前
|
存储 监控 安全
Linux系统日志
【4月更文挑战第6天】Linux系统日志,关键用于记录系统状态和事件,包括内核、系统、安全和应用日志,助力管理员诊断问题、确保系统正常运行。日志管理涉及收集、分析、备份等,常用工具如rsyslog、systemd-journal和logrotate(用于日志轮转)。重视日志文件的存储管理,防止空间占用过多。
19 1
Linux系统日志
|
12天前
|
SQL 监控 安全
Linux&Windows 日志分析 陇剑杯 CTF
Linux&Windows 日志分析 陇剑杯 CTF
|
22天前
|
关系型数据库 MySQL Linux
linux特定服务日志
Linux系统的服务日志在`/var/log`目录下,如系统日志(`/var/log/syslog`或`/var/log/messages`)、认证日志(`/var/log/auth.log`)、SSH日志(`/var/log/auth.log`或`/var/log/secure`)。Web服务器(Apache和Nginx)的访问和错误日志、MySQL错误日志、Postfix及Dovecot邮件服务器日志也在此处。日志位置可能因发行版和服务配置而异,不确定时可查服务配置或用`grep`搜索。使用`logrotate`可管理日志文件大小。
22 6
|
26天前
|
运维 监控 安全
linux日志分析与追踪
在Linux中,日志分析涉及检查 `/var/log` 下的不同文件,如`messages`、`auth.log`、`kern.log`等,以及Web服务器和数据库日志。使用`tail`、`grep`、`awk`等工具实时查看和搜索日志,`logrotate`管理日志大小,`journalctl`处理Systemd日志,而`Splunk`等工具则用于集中式分析。分析技巧包括异常检测、时间关联和阈值监控。安全事件追踪结合登录失败日志、网络嗅探和IDS/IPS。日志链路追踪在分布式系统中尤为重要,帮助定位服务调用问题。有效的日志管理和分析能增强系统安全和故障排除能力。
22 7
|
1月前
|
XML 运维 监控
【深入探究 C++ 日志库清理策略】glog、log4cplus 和 spdlog 的日志文件管理策略
【深入探究 C++ 日志库清理策略】glog、log4cplus 和 spdlog 的日志文件管理策略
67 0
|
1月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 实时监控日志文件 swatch命令 使用指南
【Shell 命令集合 系统管理 】Linux 实时监控日志文件 swatch命令 使用指南
36 1
|
1月前
|
Shell Linux
【Shell 命令集合 文件管理】Linux 清理临时文件 tmpwatch命令使用教程
【Shell 命令集合 文件管理】Linux 清理临时文件 tmpwatch命令使用教程
38 0

相关产品

  • 日志服务