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

利用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

最新文章

  1. 【Codeforces720D】Slalom 线段树 + 扫描线 (优化DP)
  2. C#基础知识记录一
  3. Eclipse插件收集
  4. sourcemap的使用
  5. CENTOS6.2系统日志rsyslog替换默认的日志服务syslog 转载自http://www.phpboy.net/linux/648.html
  6. .net框架介绍
  7. Umbraco模型默认属性
  8. CCF 201612-1 中间数
  9. linux下编译安装nginx
  10. POI处理Excel中各种日期格式问题
  11. SpringBoot入门教程(十一)过滤器和拦截器
  12. WinForm -- 为TextBox文本框添加鼠标右键菜单
  13. Sublime Text3—设置快捷键打开浏览器
  14. emq知识点
  15. A Swifr Tour
  16. hashcode()和equals()的作用、区别、联系
  17. Django中url()
  18. 01-学前入门.Net两种交换模式
  19. 【Floyd矩阵乘法】BZOJ1706- [usaco2007 Nov]relays 奶牛接力跑
  20. web.xml中contextConfigLocation参数的作用

热门文章

  1. CF190C STL 题解
  2. 干掉visio,这个画图神器太香了
  3. pipeline是什么?
  4. Mit6.830 - simpledb - 总览
  5. Python学习问题汇总
  6. CF78B Easter Eggs 题解
  7. centos7修改时区EDT------CST
  8. Photoshop学习笔记(一)
  9. 【LeetCode】292. Nim Game 解题报告(Java & Python)
  10. 【LeetCode】229. Majority Element II 解题报告(Python & C++)