zoukankan      html  css  js  c++  java
  • shell 脚本执行日志通用模块

    目标

    实现记录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_status(){
    sqlplus -S test/passw0rd@orcl <<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/1234@test <<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                                       //发生异常,调用异常,程序退出



  • 相关阅读:
    cc.Component
    cc.Node—坐标系统
    cc.Node—事件响应
    cc.Node—Action
    cc.Node—场景树
    console.log格式化及console对象
    网站开发学习Python实现-Django项目部署-介绍(6.2.1)
    个人博客搭建Python实现-尝试-遇到的问题(10.1.1)
    工具-Redis-django存储session(99.6.4)
    工具-Redis-与Python一起使用(99.6.3)
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5348013.html
Copyright © 2011-2022 走看看