日志通过脚本导入到HDFS当中

可以关注公众号:分享电脑学习
回复"百度云盘" 可以免费获取所有学习文档的代码(不定期更新)

利用shell脚本定时备份日志数据到HDFS上(适合日志数据比较少的时候)

时间命令

date +"%Y%m%d" 今天的日期

date -d "1 day ago" +"%Y%m%d" 昨天的日期

date -d "-1 day" +"%Y%m%d" 昨天的日期

 

获取昨天的日志:

mv access.log 20200128access.log

 

在nginx目录下创建一个目录:mkdir scripts

创建脚本:vi cut_nginx_log.sh

授权chmod 755 cut_nginx_log.sh

代码编写

测试执行

日志剪切走了

再创建一个脚本:vi put_log_hdfs.sh

授权chmod 755 put_log_hdfs.sh

编写脚本内容

测试执行

可以看到HDFS上有数据

再写一个脚本,分别调用两个脚本 total_put_and_cut_log.sh

授权chmod 755 total_put_and_cut_log.sh

第一个脚本调用完了之后

睡眠1分钟,让第一个脚本有充足的时间备份

再调用第二个脚本

测试执行

这里因为刚刚已经上传了所以文件已经存在

定时执行crontab:

crontab -e

00 00 * * * /bin/sh /user/local/nginx/logs/apps/nginx/logs/scripts/total_put_and_cut_log.sh查看任务:crontab -l

需要重启crontab:

service crond restart

posted on   那山的狐狸  阅读(375)  评论(0编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示