用 shell 脚本做日志清洗】的更多相关文章

问题的提出 公司有一个用户行为分析系统,可以记录用户在使用公司产品过程中的一系列操作轨迹,便于分析产品使用情况以便优化产品 UI 界面布局.这套系统有点类似于 Google Analyse(GA),所不同的是,为了让用户把产品用起来,公司会将用户行为与优惠活动联系起来,例如购买产品后一段时间内如果使用时长达到一定标准,就能从销售那里领取小礼品,初衷是为了让用户把产品用起来.可是这个活动一经推出,我这边电话就被打爆了,因为经常有用户感觉自己在用产品了,但是销售给他反馈的时长信息却没有增长.于是实施…
前言 项目中有一个功能,需要监控本地文件系统的变更,例如文件的增.删.改名.文件数据变动等等.之前只在 windows 上有实现,采用的是 iocp + ReadDirectoryChanges 方案,现在随着整个应用移植到 mac 上,需要对这一部分进行适配,macOS 上相应的底层机制为 File System Events,通知的类型大同小异.为了便于验证,写了一个 demo 来跑最核心的功能. macOS 开门见山,先来看在 mac 上的实现. rdc-demo 这个 demo 是从 w…
问题的提出 基于历史原因,公司有一个"三无"采集服务--无人员.无运维.无监控--有能力做的部门不想接.接了的部门没能力.于是就一直这样裸奔,直到前几天一个依赖于这个采集服务的大数据分析服务入口流量锐减,才发现居然是这个采集服务出问题了!而且问题不是简单的挂掉,而是这个采集服务给客户端下发的采集策略中,产品列表为空了!当时事出紧急,把所有产品开关挨个打开了一遍,算是临时解决了这个问题.事后复盘这个问题,从问题出现.到问题被感知到.再到问题被临时解决,这中间消耗的时间太长了,在新的采集服…
该文章转自:http://blog.csdn.net/wylfengyujiancheng/article/details/50019299 ------------------------------------------------------------------------------------ 在shell脚本执行过程中如果没有日志记录,特别是脚本比较长的情况下在执行完再定位问题很难发现问题原因,因此在脚本中增加日志显得十分重要.如何在日志中记录是哪个用户什么时间执行的哪个脚本,…
背景:现有日志接入日志报表大盘,为了避免作业高峰期间(双十一),系统也要观测系统整体情况,因此提出了观测近五分钟,接口成功率以及耗时等工具(默认统计最近五分钟,并进行结果汇总统计) 使用说明 前提:pgm免登陆配置好,生成ssh公钥 如果配置不成功通过修改该脚本 pgm 后面加入 -A 输入密码 命令执行后,trace.log中实时看捞取数据 结果保存在 result.log中 命令后台运行 执行成功后会 提示 commplete see trace.log or result.log 默认执行…
问题的提出 公司开发机与远程服务器之间有严格的隔离策略,不能直接使用 ssh 登录,而必需通过跳板机.这样一来,本地与服务器之间的一些文件传输变得非常不便.经过咨询,运维教了我一招: $ nc -l 8080 > filename $ nc yunhai.xxxxxxxx.xxxxx.com 8080 < filename 使用 nc 建立连接来传输文件,第一行命令在服务器执行,第二行命令在本地执行,它的参数就是远程服务器的 host,运行完成后,将文件从本地拷贝到远程.这样确实可以工作,而且…
rc.local的日志内容默认是/var/log/boot.log /etc/rc.d/rc.local文件的文件头是#!/bin/sh ,我们把这修改成#!/bin/sh -x,这样系统启动后就会把/etc/rc.d/rc.local里面的指令或脚本不能执行的日志写入/var/log/messages,或者/var/log/boot.log里,自己验证 下面的配置会把rc.local里要执行的sh脚本的日志内容输出到/tmp/rc.local.log里 exec 1>/tmp/rc.local…
目标 实现记录SHELL执行的開始时间,结束时间.执行状态,错误信息等,以函数封装日志记录的方式,脚本调用函数 源代码 通用函数脚本program_log_new.sh function init_log() { sqlplus -S test/passw0rd@orcl <<EOF insert into program_log values($id,$day,'$1', sysdate,null,'S',null); commit exit EOF } function modify_st…
为避免日志过大,需要按天分割日志,定时计划任务脚本如下: /data/shell/backup_yesterday_nginx_log.sh declare logs_path="/data/log/nginx";#declare need_delete_path=${logs_path}/$(date -d "7 days ago" "+%Y_%m_%d");#declare yestoday_log_path=${logs_path}/$(d…
案例1:开发shell采集脚本 1.点击流日志每天都10T,在业务应用服务器上,需要准实时上传至数据仓库(Hadoop HDFS)上 2.一般上传文件都是在凌晨24点操作,由于很多种类的业务数据都要在晚上进行传输,为了减轻服务器的压力,避开高峰期. 如果需要伪实时的上传,则采用定时上传的方式 #!/bin/bash #set java env export JAVA_HOME=/usr/java/jdk1.7.0_45 export JRE_HOME=${JAVA_HOME}/jre expor…