将日志备份推送到s3存储上
1.将日志备份推送到s3存储上
#!/bin/sh
# 此脚本实现将/usr/local/netqin/boss/netqin/logs/BOSS_ContentServer/BOSS_AD_SDK 目录下的日志
# 按月按日志类别 tar 打包备份
# by libaolin
# 目录变量
BUSINESS_PASH=/usr/local/boss/logs/BOSS_ContentServer/BOSS_SDK/
# 本机内网IP
IP=`/sbin/ifconfig| grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'`
# 前一天的日期(按天备份)
LAST_DAY=`date -d "-1day" +%Y-%m-%d`
# 备份BOSS_ADS_ADLOG_DailyRolling 日志
cd ${BUSINESS_PASH} && /bin/tar zcf /ADSDK_log_bak/BOSS_ADS_ADLOG_DailyRolling/BOSS_ADS_ADLOG_DailyRolling.log.${LAST_DAY}_${IP}.tar.gz BOSS_ADS_ADLOG_DailyRolling.log.${LAST_DAY}
# aws s3 cp /ADSDK_log_bak/bak_db_adsdk/${DATE_TIME}_adsdk.sql.tar.gz s3://adsdk-server/adsdk_db/
aws s3 cp /ADSDK_log_bak/BOSS_ADS_ADLOG_DailyRolling/BOSS_ADS_ADLOG_DailyRolling.log.${LAST_DAY}_${IP}.tar.gz s3://adsdk-server/adsdk_log_bak/BOSS_ADS_ADLOG_DailyRolling/
# 备份BOSS_ADS_DailyRolling 日志
cd ${BUSINESS_PASH} && /bin/tar zcf /ADSDK_log_bak/BOSS_ADS_DailyRolling/BOSS_ADS_DailyRolling.log.${LAST_DAY}_${IP}.tar.gz BOSS_ADS_DailyRolling.log.${LAST_DAY}
aws s3 cp /ADSDK_log_bak/BOSS_ADS_DailyRolling/BOSS_ADS_DailyRolling.log.${LAST_DAY}_${IP}.tar.gz s3://adsdk-server/adsdk_log_bak/BOSS_ADS_DailyRolling/
# 通过s3 sync 推送数据
# cd /ADSDK_log_bak/BOSS_ADS_ADLOG_DailyRolling/ && /usr/bin/aws s3 sync ${yestoday_with_separator} s3://adsdk-server/adsdk-emr/InputDate/${yestoday_with_separator} --quiet
# 清理业务日志 5 天前
#cd ${BUSINESS_PASH} && /bin/rm -f /usr/local/netqin/boss/netqin/logs/BOSS_ContentServer/BOSS_AD_SDK/BOSS_ADS_ADLOG_DailyRolling.log.${LAST_DAY_SEVEN}
#cd ${BUSINESS_PASH} && /bin/rm -f /usr/local/netqin/boss/netqin/logs/BOSS_ContentServer/BOSS_AD_SDK/BOSS_ADS_DailyRolling.log.${LAST_DAY_SEVEN}
cd ${BUSINESS_PASH} && find -type f -name "*log*" -mtime +1 |xargs rm -f
# 清理压缩日志 5 天前
#/bin/rm -f /ADSDK_log_bak/BOSS_ADS_ADLOG_DailyRolling/BOSS_ADS_ADLOG_DailyRolling.log.${LAST_DAY_SEVEN}_${IP}.tar.gz
#/bin/rm -f /ADSDK_log_bak/BOSS_ADS_DailyRolling/BOSS_ADS_DailyRolling.log.${LAST_DAY}_${IP}.tar.gz
cd /ADSDK_log_bak/BOSS_ADS_ADLOG_DailyRolling/ && find -type f -name "*log*" -mtime +4 |xargs rm -f
cd /ADSDK_log_bak/BOSS_ADS_DailyRolling/ && find -type f -name "*log*" -mtime +4 |xargs rm -f
将日志备份推送到s3存储上的更多相关文章
- 【Nginx】如何格式化日志并推送到远程服务器?看完原来很简单!!
写在前面 Nginx作为最常用的反向代理和负载均衡服务器,被广泛的应用在众多互联网项目的前置服务中,很多互联网项目直接将Nginx服务器作为整个项目的流量入口.这就使得我们可以通过对Nginx服务器日 ...
- git-------基础知识(本地推送项目版本---github上)
创建Git仓库 一:初始化版本库:-git init 二:添加文件到缓存区:-git add --添加所有文件 是:加个点-列:git add . 三:查看仓库状态:-git status 四:添加 ...
- Git push将本地版本库的分支推送到远程服务器上对应的分支
在使用git commit命令将修改从暂存区提交到本地版本库后,只剩下最后一步将本地版本库的分支推送到远程服务器上对应的分支了,如果不清楚版本库的构成,可以查看我的另一篇,git 仓库的基本结构. g ...
- 推送代码到GitHub上的两种方式
要想将本地Git上代码提交到GitHub可以使用两种协议进行提交,分别使用HTTPS和SSH两种协议,如下所示. 当使用HTTPS协议时,每次推送的时候都需要输入GitHub平台的用户名密码. ...
- Django项目: 项目环境搭建 ---- 三、在码云平台创建项目&推送到码云上
三.在码云平台创建项目 git服务平台: 主要使用github(最主流) 国内访问速度慢 托管私有项目收费 国内一般使用码云gitee 国内访问速度快 托管私有项目免费(限制开发人数) 公司中使用gi ...
- [wxpusher]分享一个服务器推送消息到微信上的小工具,可以用于微信推送提醒和告警。
背景 作为一个程序员,业余搞点自己的东西很正常,一般程序员都会有一两台自己的服务器,谁叫今天xx云搞活动,明天yy云搞活动呢. 自家的服务器用来跑爬虫,跑博客,或者跑一些个人业务,但当服务有新状态,抢 ...
- python监控服务器应用日志,推送钉钉机器人,实时关注日志异常
生产环境多台服务器上部署了多个应用,日志出现报错时,无法及时反馈到开发人员.部署一个大型的运维监控应用,不但耗资源,而且配置也不简单. 简简单单写个python脚本来监控服务器日志就简单多了,废话不多 ...
- 从壹开始 [Admin] 之四 || NetCore + SignalR 实现日志消息推送
缘起 哈喽大家周一好呀,感觉好久没有写文章了,上周出差了一次,感觉还是比坐办公室好的多,平时在读一本书<时生>,感兴趣的可以看看
- asp.net core使用serilog将日志推送到腾讯云日志服务
为什么是serilog? Serilog是 .NET 中最著名的结构化日志类库. 基于日志事件log events,而不是日志消息log message. 你可以将日志事件格式化为控制台的可读文本或者 ...
随机推荐
- instanceof关键字的理解
instanceof,两个单词组成,instance of,意为, "… 是 …的实例". 本身包含null值的判断.但是有不少人,先来个 obj != null,然后来个 obj ...
- idea打开项目,没有项目文件,文件报红
删除项目文件夹中的.idea文件,重启idea,再执行如下操作.
- gson常用的方式
gson提供的fromJson()方法来实现从Json相关对象到Java实体的方法. 第一种.Json格式转成单一实体对象和转换成对象列表或者其他结构 第二种.转换成列表类型 注:TypeToken: ...
- Web App架构
Web App 架构分为两种:一种是工程架构,一种是项目架构. 工程架构则主要有以下几个方面的内容: 1, 解放生产力,我们希望在开发项目的过程中把全部目光都放到书写业务代码上,不需要去考虑一些重复性 ...
- ORM基础之ORM介绍和基础操作
一.ORM介绍 1.ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过 ...
- 打印并输出 log/日志到文件(C++)
#include <stdarg.h> #define MAX_LEN 1024 bool debug_mode; // 使用方法同 printf void lprintf(const c ...
- BZOJ4671异或图
题目描述 定义两个结点数相同的图 G1 与图 G2 的异或为一个新的图 G, 其中如果 (u, v) 在 G1 与 G2 中的出现次数之和为 1, 那么边 (u, v) 在 G 中, 否则这条边不在 ...
- redis-sentinel高可用配置(2)
一:说明 前面我们已经配置了redis的主从配置(链接),这种主从架构有一个问题,当主master出现了故障了,怎么切换到从服务器上呢? 第一种:手动切换, 这种肯定会造成比较长一段时间的用户不能访问 ...
- python 发送post和get请求
摘自:http://blog.163.com/xychenbaihu@yeah/blog/static/132229655201231085444250/ 测试用CGI,名字为test.py,放在ap ...
- C++回顾day03---<异常>
一:传统错误处理机制(C中通过函数返回来处理) int CalcRes(int n, int m, char ch, int& res) { ; switch (ch) { case '+': ...