shell 脚本执行日志通用模块
Posted phlsheji
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell 脚本执行日志通用模块相关的知识,希望对你有一定的参考价值。
目标
实现记录SHELL执行的開始时间,结束时间。执行状态,错误信息等,以函数封装日志记录的方式,脚本调用函数
源代码
通用函数脚本program_log_new.sh
function init_log() { sqlplus -S test/[email protected] <<EOF insert into program_log values($id,$day,'$1', sysdate,null,'S',null); commit exit EOF } function modify_status(){ sqlplus -S test/[email protected] <<EOF update program_log set program_status='$1',end_date=sysdate where id=$id; commit exit EOF } function exception_write(){ if [ $? -ne 0 ] then modify_status $status2 exit 1 fi } function finish_write(){ if [ $? -eq 0 ] then modify_status $status1 #modify_status $1 $2 $3 else # modify_status $1 $2 $3 modify_status $status2 exit 1 fi } status1=C status2=F day=`date "+%Y%m%d"` id=`sqlplus -S user/[email protected] <<EOF set heading off select program_log_seq.nextval from dual; commit exit EOF`
#!/bin/sh . ~/.bash_profile source program_log_new.sh //公用脚本 init_log sh_xx //初始化日志函数调用,传入程序名 shell命令xxx 2>${logdir}/xx_$time.log exception_write //发生异常。调用异常,程序退出 shell命令xxx 2>${logdir}/xx_$time.log exception_write //发生异常。调用异常。程序退出 .... shell命令xxx 2>${logdir}/xx_$time.log finish_write //发生异常,调用异常,程序退出
以上是关于shell 脚本执行日志通用模块的主要内容,如果未能解决你的问题,请参考以下文章