在项目的根目录创建logback-spring.xml,因为springboot自带logback lombok直接使用即可:
相关配置如下,该日志会在${LOG_DIR}/logs/目录下生成一个以年月日命名的文件夹,每天生成一个log文件,<maxHistory>30</maxHistory>为保留三十天的log文件,超出会自动删除。
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
日志输出包括log、system.out
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_DIR}/logs/%d{yyyy-MM,aux}/current-%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="info">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
<appender name="STDOUT_TO_FILE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
<target>SYSTEM_OUT</target>
</appender>
<logger name="java.lang.System.out" level="INFO" additivity="false">
<appender-ref ref="STDOUT_TO_FILE" />
</logger>
</configuration>
然后在对应类添加注解lombok.extern.slf4j @Slf4j
然后在启动jar文件中(注意:这里是springboot直接打包成jar)然后Linux服务器直接后台运行
命令如下:sh start.sh
#!/bin/bash
nohup java -DLOG_DIR=/soft/cosmicMqToEasServer -jar /soft/cosmicMqToEasServer/RabbitMQToEasService.jar --server.port=8086 --spring.config.location=file:/soft/cosmicMqToEasServer/application.properties > /dev/null 2>&1 &
echo "RabbitMQToEasService started."
停止服务命令:
sh stop.sh
#!/bin/bash
PID=$(ps -ef | grep "RabbitMQToEasService.jar" | grep -v grep | awk '{print $2}')
if [ -z "$PID" ]
then
echo "RabbitMQToEasService is not currently running."
else
kill $PID
echo "RabbitMQToEasService stopped."
fi