一、 DB环境
内容日志表:BAS_RIAORIGINALCDR
登录日志表:BAS_SRCWONLOGONCDR
日结表: BAS_RIADAIYCOUNTS
CDR采集任务标记表: bas_cdrcollectionflag
OSS用户T3BAS/T3BAS
二、 OSS服务环境
服务软件目录:/home/ccfClientRelease/
启动脚本:/home/ccfClientRelease/start.sh
重启服务脚本:/root/script/ccfreboot.sh
三、 具体实施
1、 策略:
每天早上2:00- ccfclient采集昨日CDR日志入库并更新日结表
每天早上4:00- 数据库自动任务运行,清楚昨日CDR日志记录中的测试手机号记 录,修改CDR采集任务标记表的任务为不成功,删除日结表中昨
日的日结算数据。
每天早上5:00- 运行系统脚本,重启ccfclient,对昨日的CDR日志记录重新进
行统计保存至日结表。
2、 创建存储过程(T3BAS)
create or replace procedure PRO_DELTESTCDR is
begin
delete from BAS_RIAORIGINALCDR where
(msisdn like '1392299%' or msisdn='13580830354' or msisdn='13686475795'
or msisdn='15002093246' or msisdn='15112571262' or msisdn='13410940459'
or msisdn='15112552269' or msisdn='13410940253' or msisdn='13640981646'
or msisdn='13410990392' or msisdn='15012865649' or msisdn='13712647620');
commit;
delete from BAS_SRCWONLOGONCDR where
(msisdn like '1392299%' or msisdn='13580830354' or msisdn='13686475795'
or msisdn='15002093246' or msisdn='15112571262' or msisdn='13410940459'
or msisdn='15112552269' or msisdn='13410940253' or msisdn='13640981646'
or msisdn='13410990392' or msisdn='15012865649' or msisdn='13712647620');
commit;
update bas_cdrcollectionflag set status=5 where cdrtype=98 and to_char(begindate,'yyyymmdd')=to_char(sysdate-1,'yyyymmdd');
commit;
delete from BAS_RIADAIYCOUNTS where to_char(createdate,'yyyymmdd')=to_char(sysdate-1,'yyyymmdd');
commit;
end PRO_DELTESTCDR;
/
3、 创建数据库自动任务 (T3BAS)
variable jobno number;
begin
sys.dbms_job.submit(job => :jobno,
what => 'PRO_DELTESTCDR;',
next_date => to_date('06-01-2010 17:20:00', 'dd-mm-yyyy hh24:mi:ss'),
interval => 'trunc(SYSDATE+1) +4/24');
commit;
end;
/
4、 创建系统重启CCFCLIENT脚本
#!/bin/bash
#desc: this program is reboot ccf
#date: 2010-01-07
export JAVA_HOME=/usr/java/jdk1.5.0
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=.:/usr/java/jdk1.5.0/lib:/usr/java/jdk1.5.0/jre/lib:$CLASSPATH
ccfpid=`ps -ef | grep java | grep ccfClient.jar | awk -F" " '{print $2}'`
kill -9 $ccfpid
cd /home/ccfClientRelease/
./start.sh &
5、 crontab后台执行脚本
0 5 * * * /root/script/ccfreboot.sh
四、测试
服务重启成功;
删除测试手机号成功;
通过http://211.139.192.149:8080/bas进程数据的查看对比
查找数据库中包含测试手机号
查找数据库任务是否执行成功
select job,last_date,next_date,failures from user_jobs;
查看CCFCLIENT服务启动时间
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22779291/viewspace-625241/ ,如需转载,请注明出处,否则将追究法律责任。