按日切割SpringBoot项目日志插件及shell脚本
- 2019 年 11 月 28 日
- 笔记
好久好久没更新文章了,感觉自己都比较懒散了。。。事也多,也不知道想给大家分享什么。
今天这个事我觉得可以给大家分享一下。故事开始:
leader:你帮我找一下昨天的短信发送异常的日志。
小优优:好嘞。
小优优:小优优把昨天同事给小优优发的图片直接给了Leader。
leader:我要文本的。
小优优:好的,我从服务器给拉一下。
默默打开打开服务器,一看日志文件 26kb,就剩今天重启后生成的日志。
呵呵呵呵呵呵呵呵呵呵呵,MD 日志没了。。。
一想到leader的脸:怕了怕了。。。。
幸好有服务器备份的jar包重新跑一下吧。麻蛋、、测试环境没问题。。。还得到生成环境跑一下有问题的jar包,复制文本给他。呕吼。彻底完犊子喽。。
最后用ocr把截图文本提炼给Leader了,躲过一劫。
幻想:小优优你把生成环境短信异常上下文异常复制完整一点。这可咋办。
小优优主动去找Leader,生成环境和测试环境启动脚本有问题,每次都会重新生成新的日志文件,把原有的日志问题给删除。
leader:那你想办法解决一下。
小优优:好的(心里想:可算逃过一劫。。)
给大家分享一下原来的shell脚本:
#!/bin/bash ## Author kingyifan ## UPDATE 2019-11-14 version="1.0.1"; appName=$2 if [ -z $appName ];then appName=`ls -t |grep .jar$ |head -n1` fi function start() { count=`ps -ef |grep java|grep $appName|wc -l` if [ $count != 0 ];then echo "Maybe $appName is running, please check it..." else echo "The $appName is starting..." nohup java -jar ./$appName -XX:+UseG1GC -XX:+HeapDumpOnOutOfMemoryError -Xms128M -Xmx512M > catalina.log 2>&1 & fi } function stop() { appId=`ps -ef |grep java|grep $appName|awk '{print $2}'` if [ -z $appId ];then echo "Maybe $appName not running, please check it..." else echo "The $appName is stopping..." kill $appId fi } function restart() { # get release version releaseApp=`ls -t |grep .jar$ |head -n1` # get last version lastVersionApp=`ls -t |grep .jar$ |head -n2 |tail -n1` appName=$lastVersionApp stop for i in {5..1} do echo -n "$i " sleep 1 done echo 0 backup appName=$releaseApp start } function backup() { # get backup version backupApp=`ls |grep -wv $releaseApp$ |grep .jar$` # create backup dir if [ ! -d "backup" ];then mkdir backup fi # backup for i in ${backupApp[@]} do echo "backup" $i mv $i backup done } function status() { appId=`ps -ef |grep java|grep $appName|awk '{print $2}'` if [ -z $appId ] then echo -e "