linux shell日志工具类 可以记录日志用

#!/bin/sh

logpath="/home/log/"
currenttime=`date "+%Y%m%d"`
fileSize=1024
loglevel=$1
logmessage=$2
logfilename=""

createfile()
{
    getLastLogFileName $logpath
    filename=$logfilename
    isNeedNewFile $filename
    result=$?
    if [ $result -eq 0 ];then
        logfilename=${logpath}${currenttime}`date "+%H%M%S"`.log
    elif [ $result -eq 2 ];then
        logfilename=${logpath}${currenttime}`date "+%H%M%S"`.log
    else
        logfilename=${logpath}$filename
    fi
}

isNeedNewFile()
{
    filename=$1

    if [ -z $filename ]; then
        return 2
    fi
   
    if [ -f $filename ];then
        size=`ls -l $filename | awk '{print $5}'`
        if [ $size -gt $fileSize ];then
           return 0
        else
            return 1
        fi
    else
        return 2
    fi
}

write_log ()
{
              createfile
              level=$1
              msg=$2
              case $level in
               debug)
               echo "[DEBUG] `date "+%Y%m%d%H%M%S"` : $msg  " >> $logfilename
               ;;
               info)
               echo "[INFO] `date "+%Y%m%d%H%M%S"` : $msg  " >> $logfilename
               ;;
               error)
               echo "[ERROE] `date "+%Y%m%d%H%M%S"` : $msg  " >> $logfilename
               ;;
               *)
               echo "error......" >> $logfilename
               ;;
               esac
}

getLastLogFileName()
{
    path=$1
    cd $path
    lastLog=`ls -l |grep $currenttime | sort -k8rn | head -1 |awk '{print $9}'`

    logfilename=$lastLog
}

 

#write_log $loglevel $logmessage

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值