ZooKeeper日志自动清理实用脚本

news2024/11/16 19:30:50

ZooKeeper日志自动清理:保持系统整洁的实用脚本

在管理ZooKeeper集群时,定期清理日志文件是一项重要但常被忽视的任务。本文将介绍一个简单而有效的bash脚本,用于自动清理ZooKeeper的日志和快照文件,并讨论如何使用cron来定期执行此脚本。

在这里插入图片描述
磁盘告警,所以写了一个脚本 定期清理。

脚本内容

首先,让我们看看这个清理脚本的内容:

#!/bin/bash

#snapshot file dir
dataDir=/var/zookeeper/version-2
#tran log dir
dataLogDir=/var/zookeeper/version-2
logDir=/usr/local/zookeeper/logs
#Leave 60 files
count=60
count=$[$count+1]
ls -t $dataLogDir/log.* | tail -n +$count | xargs rm -f
ls -t $dataDir/snapshot.* | tail -n +$count | xargs rm -f
ls -t $logDir/zookeeper.log.* | tail -n +$count | xargs rm -f

脚本解析

让我们逐行分析这个脚本:

  1. #!/bin/bash: 这是shebang,指定使用bash解释器执行此脚本。

  2. 定义了三个目录变量:

    • dataDir: 存储快照文件的目录
    • dataLogDir: 存储事务日志的目录
    • logDir: 存储ZooKeeper日志的目录
  3. count=60: 设置保留的文件数量为60个。

  4. count=$[$count+1]: 将count增加1,这是为了在使用tail命令时正确计算要删除的文件数。

  5. 接下来的三行是清理逻辑的核心:

    ls -t $dataLogDir/log.* | tail -n +$count | xargs rm -f
    ls -t $dataDir/snapshot.* | tail -n +$count | xargs rm -f
    ls -t $logDir/zookeeper.log.* | tail -n +$count | xargs rm -f
    

    每行都执行以下操作:

    • ls -t: 按时间顺序列出文件
    • tail -n +$count: 选择旧于前60个的所有文件
    • xargs rm -f: 删除这些文件

自动化执行

要自动执行这个脚本,我们可以使用cron。以下是一个cron表达式示例:

2 2 * * * /bin/bash /data/www/cleanlog.sh > /dev/null 2>&1

这个cron表达式的含义是:

  • 每天凌晨2:02执行脚本
  • 脚本输出被重定向到/dev/null,不保存日志

结论

这个简单的脚本可以有效地管理ZooKeeper的日志和快照文件,防止磁盘空间被耗尽。通过cron自动化执行,可以确保系统始终保持整洁和高效。在实际部署时,请根据您的具体需求和环境调整脚本参数和执行频率。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1966954.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何用代码在数据库新建一个表格/HTML的跨行合并和跨列合并

1.用navicat新建一表格 数据库使用链接 2.前端代码 &#xff08;1&#xff09;跨行合并&#xff1a;rowspan“合并单元格的个数” 跨列合并&#xff1a;colspan“合并单元格的个数” <body> <table border"1”align"center” width"100%cellpaddin…

微信公众号,配置自定义菜单,跟回调授权网址配置入口,图讲解

微信公众号&#xff0c;配置自定义菜单&#xff0c;跟回调授权网址配置入口&#xff0c;图讲解

【图像识别】十大数据集合集!

本文将为您介绍10个经典、热门的数据集&#xff0c;希望对您在选择适合的数据集时有所帮助。 1 DanishFungi2020 发布方&#xff1a; Google 发布时间&#xff1a; 2021 简介&#xff1a; 补充材料&#xff1a;丹麦真菌 2020 - 不仅仅是另一个图像识别数据集为了支持细粒度植…

django网络爬虫系统- 计算机毕业设计源码81040

摘要 本论文主要论述了如何开发一个网络爬虫系统&#xff0c;对旅游景点信息进行爬取&#xff0c;本系统将严格按照软件开发流程进行各个阶段的工作&#xff0c;面向对象编程思想进行项目开发。在引言中&#xff0c;作者将论述网络爬虫系统的当前背景以及系统开发的目的&#x…

【计算机网络】TCP/IP四层模型

文章目录 TCP/IP模型应用层&#xff08;Application Layer&#xff09;传输层&#xff08;Transport Layer&#xff09;网络层&#xff08;Internet Layer&#xff09;网络接口层&#xff08;Network Interface Layer&#xff09; TCP/IP模型 经典的TCP/IP参考模型从上至下分为…

如何手动修复DLL丢失?directx修复工具收费吗?

在使用电脑时&#xff0c;我们有时会遇到DLL文件丢失或损坏的问题&#xff0c;导致软件无法正常运行。DLL&#xff08;动态链接库&#xff09;文件是Windows操作系统中重要的组成部分&#xff0c;用于共享程序代码和资源。本文将介绍如何手动修复DLL丢失问题&#xff0c;手动修…

【优秀python案例】基于Python的豆瓣电影TOP250爬虫与可视化设计与实现

摘要&#xff1a;伴随着当代社会物质水平的不断提高&#xff0c;人们越来越注重精神享受&#xff0c;看电影成为人们日常生活中重要的组成成分。本文将针对豆瓣上热门电影评论进行爬取&#xff0c;应用可视化分析更为形象地了解该电影的动态。该系统可以使得人们实时了解到有关…

WebLogic:CVE-2023-21839[JNDI注入]

原理 1、T3/IIOP协议支持 远程绑定对象 bind到服务端&#xff0c;而且可以通过lookup代码 c.lookup("xxxxxx"); 查看 2、远程对象继承自OpaqueReference并lookup查看远程对象时&#xff0c;服务端会调用远程对象 getReferent 方法 3、由于 weblogic.deployment.…

Java未来还是霸主吗?Java 在当今企业中的未来到底是什么?

Java 及其生态系统对于许多现代企业的成功至关重要。它是一种多功能语言&#xff0c;对许多用例提供强大支持&#xff0c;并具有强大的新功能来应对棘手的情况。但您可能会问自己&#xff1a;Java 的未来是什么&#xff1f; 尽管自 1999 年以来 Java 一直是软件开发领域的关键角…

【C++11】深度解析--异步操作(什么是异步?异步有那些操作?异步操作有什么用呢?)

目录 一、前言 二、什么是异步操作呢&#xff1f; &#x1f525;异步的概念&#x1f525; &#x1f525;异步的生活案例说明&#x1f525; 三、异步有那些操作呢&#xff1f; &#x1f525;std::future&#x1f525; &#x1f4a2;std::future 的概念&#x1f4a2; &a…

SmolLM-HuggingFace发布的高性能小型语言模型

SmolLM是什么&#xff1f; SmolLM是由 Huggingface 最新发布的一系列最先进的小型语言模型&#xff0c;有三种规格&#xff1a;1.35亿、3.6亿和17亿个参数。这些模型建立在 Cosmo-Corpus 上&#xff0c;Cosmo-Corpus 是一个精心策划的高质量训练数据集。Cosmo-Corpus 包括 Cos…

AT24C08系列eeprom总结

内存大小说明&#xff1a;单位&#xff08;bits(位&#xff09; AT24C02A&#xff0c;2K bits串行EEPROM&#xff1a;内部组织为256页&#xff0c;每页1字节&#xff0c; AT24C04A&#xff0c;4K bits串行EEPROM&#xff1a;4K内部组织为256页&#xff0c;每页2字节。 AT24C…

拯救丢失数据,这三款数据恢复软件你不可错过

数据丢失真的很烦人&#xff0c;无论是手滑删除了重要文件&#xff0c;还是电脑突然崩溃&#xff0c;那些珍贵的照片、文档、视频&#xff0c;一瞬间就仿佛人间蒸发了一样。但别担心&#xff0c;科技的力量总能给我们带来希望&#xff0c;数据恢复软件就是我们的救星。我用过了…

如何选择开放式耳机?2024五款热门机型推荐!

耳机在我们日常通勤和运动锻炼中扮演着重要的角色&#xff0c;它不仅帮助我们放松和振奋&#xff0c;还提供了随时可得的安慰和动力。选择一款合适的耳机非常关键&#xff0c;开放式耳机因其不挤压耳道的设计&#xff0c;在多种使用场景下都能提供良好的适应性&#xff0c;特别…

本地node搭建web服务器

首先确认自己的电脑已经安装了node.js 1.创建一个node服务文件 创建一个node-serve文件夹&#xff0c;然后在当前文件下输入初始化node项目命令。 npm init然后一直按回车即可&#xff0c;完成之后生成一个 package.json 文件。 2.在当前文件夹下新建一个 index.js 的文件&…

IT人求职就业手册:如何在数字时代脱颖而出

&#x1f482; 个人网站:【 摸鱼游戏】【网址导航】【神级代码资源网站】&#x1f91f; 一站式轻松构建小程序、Web网站、移动应用&#xff1a;&#x1f449;注册地址&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交…

《数据库技术及其对我国企业发展的重大贡献》

数据库技术及其对我国企业发展的重大贡献 一、夯实数字化基础&#xff0c;助力企业转型二、提升数据处理能力&#xff0c;增强企业核心竞争力三、保障数据安全&#xff0c;筑牢企业发展防线四、推动技术创新&#xff0c;引领企业未来发展五、构建数据生态&#xff0c;激发企业创…

Vue + View-ui-plus Upload实现手动上传

本文实现Vue Upload组件多文件手动上传&#xff0c;支持上传图片&#xff08;image&#xff09;、压缩文件(zip/rar)、表格(excel)、pdf 一、dom结构 <Row><Col :span"19"></Col><Col :span"2"><div class"ivu-btn-uplo…

基于自监督学习的多维MRI数据去噪

摘要 目的&#xff1a;开发一种基于自监督学习方法的高维MRI数据去噪框架&#xff0c;该框架无需基准真值。 方法&#xff1a;定量MRI面临着信噪比(SNR)的限制&#xff0c;而且复杂的非线性信号模型使得拟合过程容易受到噪声的影响。为了解决这些问题&#xff0c;本研究提出了…

智慧停车场反向寻车功能:蓝牙iBeacon技术赋能地下车库精准定位与导航

随着城市车辆数量的激增&#xff0c;传统停车场面临着管理效率低下、停车难、寻车难等问题。智慧停车场导航停车和反向寻车技术的引入&#xff0c;为解决这些问题提供了创新方案&#xff0c;极大提升了停车场的智能化水平和用户体验。 智慧停车场导航系统的技术架构 1.基于3D…