nohup java -Xloggc:./wse-gc-%t.log -Xms512M -Xmx1024M -jar zdhyw20230410.jar > nohup.out 2>&1 &
nohup java -jar -Xms512M -Xmx1024M zdhyw20230410.jar > nohup.out 2>&1 &
-Xms128M -Xmx256M -XX:PermSize=64M -XX:MaxPermSize=128M
-Xloggc:./wse-gc-%t.log -XX:+PrintCommandLineFlags -version -XX:InitialHeapSize=1052906816 -XX:MaxHeapSize=16846509056 -XX:+PrintCommandLineFlags -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseParallelGC
nohup java -jar -Xms128M -Xmx256M -XX:PermSize=64M -XX:MaxPermSize=128M xxxx.jar
Xms — 堆内存初始大小
Xmx — 堆内存最大值
PermSize — 永久内存初始大小
MaxPermSize — 永久内存最大值
输出日志在当前目录:
nohup java -jar ace-auth.jar >> nohup`date +%Y-%m-%d`.out 2>&1 &
指定日志目录输出:
指定输出到当前目录log文件夹中
nohup java -jar ace-auth.jar >> ./log/nohup`date +%Y-%m-%d`.out 2>&1 &
发现无法自动切割日志,做一个定时脚本,凌晨时候kill掉进程然后再启动
kill -9 $(ps -ef |grep java |grep -w 'java'|grep -v 'grep'|awk '{print $2}')
或者
ps -ef | grep java | grep -v grep | awk '{print $2}' | xargs kill -9
定时执行:
crontab -e
0 0 * * * /root/everyday.sh
补:现在使用的方案:
将原日志文件复制出来,然后清空原日志文件
登录后复制
cat *.out >> nohup`date +%Y-%m-%d`.out
echo " " > nohup.out
-----------------------------------
windows java 输出日志到文件 nohup java -jar输出日志
https://blog.51cto.com/u_16099277/6283471
赋予文件执行权限
chmod 777 split_logs.sh

开启定时任务,执行split_logs.sh
vim /etc/crontab

wq保存退出,第二天查看前一天文件有没生成
我这边脚本已经执行了,说明定时任务已生效
但是别人好像也有失效的情况,使用第二种方式
crontab -l

说明没有生效,但是我这边其实也是这样的输出。。。
crontab -e

将前面的定时任务的指令,输入进入,wq保存退出
crontab -l
