linux shell日志工具类 可以记录日志用
2014-04-03 17:49
218 查看
#!/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
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
相关文章推荐
- linux shell日志工具类 可以记录日志用
- Go/Python/Erlang编程语言对比分析及示例 基于RabbitMQ.Client组件实现RabbitMQ可复用的 ConnectionPool(连接池) 封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil 分享基于MemoryCache(内存缓存)的缓存工具类,C# B/S 、C/S项目均可以使用!
- 一个错误日志记录工具类
- Python实现日志自动记录功能(一个思路代码,详细可以自己扩展)
- linux shell 用syslog记录日志
- linux shell编程之文件内容写入和日志记录 推荐
- 一个日志记录工具类
- 只需要三步就可以创建错误日志,记录错误日志,拿来就能用,无需改
- Log4net是.Net 的全部应用(可以用来记录自己的日志中心的日志)
- 自定义Log4j日志记录工具类
- 封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil
- (工具类)Linux笔记之终端日志记录工具script
- vc多行输入控件、可以用来记录日志的控件
- PHP的一个日志记录工具类
- python可以分开文件记录日志的类
- linux shell编程之文件内容写入和日志记录
- 记录日志的工具类LogWriter
- C#创建创建文本文件写入读取,可以用来做系统日志或程序操作日志或者错误记录
- 分享一个格式化json的工具类,在日志输入里直接可以很方便的看log了
- xml 这样也可以记录日志。