代码拉取完成,页面将自动刷新
同步操作将从 JustryDeng/notebook 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
name
属性的值来和springboot的spring.profiles.active
对应定值
<springProfile name="test">
<!-- configuration to be enabled when springb-boot "test" profile is active -->
</springProfile>
或
<springProfile name="dev | test">
<!-- configuration to be enabled when springb-boot "dev" or "test" profiles are active -->
</springProfile>
非
<springProfile name="!production">
<!-- configuration to be enabled when springb-boot "production" profile is not active -->
</springProfile>
spring-boot:2.6.6
项目结构
各配置文件内容
application-dev.properties
curr.env.info=我是dev环境
application-test.properties
curr.env.info=我是test环境
application-prod.properties
curr.env.info=我是prod环境
DemoApplication启动类
@Slf4j
@SpringBootApplication
public class DemoApplication implements ApplicationRunner {
@Value("${spring.profiles.active}")
private String springProfilesActive;
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
@Override
public void run(ApplicationArguments args) throws Exception {
log.info("随便记录点什么吧,那就~ 此时, spring.profiles.active=" + springProfilesActive);
}
}
logback-spring.xml配置
<configuration>
<!-- 多环境定制logger配置 -->
<!-- dev -->
<springProfile name="dev">
<springProperty name="currEnvInfo" scope="context" source="curr.env.info" defaultValue=""/>
<property name="pattern" value="${currEnvInfo} %msg%n"/>
<appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${pattern}</pattern>
<charset class="java.nio.charset.Charset">UTF-8</charset>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="consoleAppender"/>
</root>
</springProfile>
<!-- test -->
<springProfile name="test">
<springProperty name="currEnvInfo" scope="context" source="curr.env.info" defaultValue=""/>
<property name="pattern" value="${currEnvInfo} %msg%n"/>
<appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${pattern}</pattern>
<charset class="java.nio.charset.Charset">UTF-8</charset>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="consoleAppender"/>
</root>
</springProfile>
<!-- prod -->
<springProfile name="prod">
<springProperty name="currEnvInfo" scope="context" source="curr.env.info" defaultValue=""/>
<property name="pattern" value="${currEnvInfo} %msg%n"/>
<appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${pattern}</pattern>
<charset class="java.nio.charset.Charset">UTF-8</charset>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="consoleAppender"/>
</root>
</springProfile>
</configuration>
当springboot配置spring.profiles.active=dev激活dev环境时,日志输出
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.6.6)
我是dev环境 Starting DemoApplication using Java 1.8.0_291 on DESKTOP-K08MNSB with PID 15340 (G:\working\demo\demo\target\classes started by 邓沙利文 in G:\working\demo\demo)
我是dev环境 The following 1 profile is active: "dev"
我是dev环境 Tomcat initialized with port(s): 8080 (http)
我是dev环境 Initializing ProtocolHandler ["http-nio-8080"]
我是dev环境 Starting service [Tomcat]
我是dev环境 Starting Servlet engine: [Apache Tomcat/9.0.60]
我是dev环境 Initializing Spring embedded WebApplicationContext
我是dev环境 Root WebApplicationContext: initialization completed in 754 ms
我是dev环境 Starting ProtocolHandler ["http-nio-8080"]
我是dev环境 Tomcat started on port(s): 8080 (http) with context path ''
我是dev环境 Started DemoApplication in 1.455 seconds (JVM running for 2.647)
我是dev环境 随便记录点什么吧,那就~ 此时, spring.profiles.active=dev
当springboot配置spring.profiles.active=dev激活dev环境时,日志输出
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.6.6)
我是test环境 Starting DemoApplication using Java 1.8.0_291 on DESKTOP-K08MNSB with PID 13540 (G:\working\demo\demo\target\classes started by 邓沙利文 in G:\working\demo\demo)
我是test环境 The following 1 profile is active: "test"
我是test环境 Tomcat initialized with port(s): 8080 (http)
我是test环境 Initializing ProtocolHandler ["http-nio-8080"]
我是test环境 Starting service [Tomcat]
我是test环境 Starting Servlet engine: [Apache Tomcat/9.0.60]
我是test环境 Initializing Spring embedded WebApplicationContext
我是test环境 Root WebApplicationContext: initialization completed in 539 ms
我是test环境 Starting ProtocolHandler ["http-nio-8080"]
我是test环境 Tomcat started on port(s): 8080 (http) with context path ''
我是test环境 Started DemoApplication in 0.986 seconds (JVM running for 2.003)
我是test环境 随便记录点什么吧,那就~ 此时, spring.profiles.active=test
当springboot配置spring.profiles.active=dev激活dev环境时,日志输出
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.6.6)
我是prod环境 Starting DemoApplication using Java 1.8.0_291 on DESKTOP-K08MNSB with PID 16220 (G:\working\demo\demo\target\classes started by 邓沙利文 in G:\working\demo\demo)
我是prod环境 The following 1 profile is active: "prod"
我是prod环境 Tomcat initialized with port(s): 8080 (http)
我是prod环境 Initializing ProtocolHandler ["http-nio-8080"]
我是prod环境 Starting service [Tomcat]
我是prod环境 Starting Servlet engine: [Apache Tomcat/9.0.60]
我是prod环境 Initializing Spring embedded WebApplicationContext
我是prod环境 Root WebApplicationContext: initialization completed in 535 ms
我是prod环境 Starting ProtocolHandler ["http-nio-8080"]
我是prod环境 Tomcat started on port(s): 8080 (http) with context path ''
我是prod环境 Started DemoApplication in 0.996 seconds (JVM running for 2.058)
我是prod环境 随便记录点什么吧,那就~ 此时, spring.profiles.active=prod
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<springProperty name="appName" scope="context" source="spring.application.name"/>
<springProperty name="logFileDir" scope="context" source="logback.logFileDir" defaultValue="./logs/${appName}"/>
<springProperty name="elkLogFileDir" scope="context" source="logback.elkLogFileDir" defaultValue="./logs/elk-log"/>
<springProperty name="maxFileSize" scope="context" source="logback.maxFileSize" defaultValue="50MB"/>
<springProperty name="maxHistoryDay" scope="context" source="logback.maxHistoryDay" defaultValue="7"/>
<springProperty name="serverPort" scope="context" source="server.port" defaultValue="0000"/>
<property name="pattern"
value="${appName}:${serverPort} %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%X{traceId}] %thread %logger{50}:%L %msg%n"/>
<appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${pattern}</pattern>
<charset class="java.nio.charset.Charset">UTF-8</charset>
</encoder>
</appender>
<appender name="fileAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logFileDir}/${appName}.log</file>
<encoder>
<pattern>${pattern}</pattern>
<charset class="java.nio.charset.Charset">UTF-8</charset>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<FileNamePattern>${logFileDir}/${appName}.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<MaxHistory>${maxHistoryDay}</MaxHistory>
<MaxFileSize>${maxFileSize}</MaxFileSize>
</rollingPolicy>
</appender>
<!-- 多环境定制logger配置 -->
<springProfile name="dev-kuoyi">
<appender name="elkEventAppender" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>47.105.39.189:5044</destination>
<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" >
<customFields>{"elk_data_type": "listen_data"}</customFields>
</encoder>
</appender>
<appender name="elkAppender" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>47.105.39.189:5044</destination>
<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" >
<customFields>{"elk_data_type": "all_data"}</customFields>
</encoder>
</appender>
<logger name="com.ultronsoft.port.acs.visitor.util.statics.ElkEventLogger" level="INFO" addtivity="false">
<appender-ref ref="elkEventAppender"/>
</logger>
<root level="INFO">
<appender-ref ref="consoleAppender"/>
<appender-ref ref="fileAppender"/>
<appender-ref ref="elkAppender"/>
</root>
</springProfile>
<springProfile name="dev-qishi">
<root level="INFO">
<appender-ref ref="consoleAppender"/>
<appender-ref ref="fileAppender"/>
</root>
</springProfile>
<springProfile name="test">
<root level="INFO">
<appender-ref ref="consoleAppender"/>
<appender-ref ref="fileAppender"/>
</root>
</springProfile>
<springProfile name="prod">
<appender name="elkEventAppender" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>127.0.0.1:5044</destination>
<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" >
<customFields>{"elk_data_type": "listen_data"}</customFields>
</encoder>
</appender>
<appender name="elkAppender" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>127.0.0.1:5044</destination>
<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" >
<customFields>{"elk_data_type": "all_data"}</customFields>
</encoder>
</appender>
<logger name="com.ultronsoft.port.acs.visitor.util.statics.ElkEventLogger" level="INFO" addtivity="false">
<appender-ref ref="elkEventAppender"/>
</logger>
<root level="INFO">
<appender-ref ref="consoleAppender"/>
<appender-ref ref="fileAppender"/>
<appender-ref ref="elkAppender"/>
</root>
</springProfile>
</configuration>
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。